Setting data at a uitable

10 views (last 30 days)
Giovanni Gardan
Giovanni Gardan on 13 Oct 2020
Answered: Walter Roberson on 13 Oct 2020
Hi,
I want to visualize the output of a code in tabular form, using "uitable".
The specific outputs are taken from the workspace that I insert in the Attachment I put below this question.
  • I define h as the 1X4 cell array which rapresent the name of the columns of the table I want to create.
  • I define NODI_MAT_DIG as the 19x2 string array which rapresent the data of the first two columns.
  • I define aa and bb which are respectively the 3th and 4th column.
I don't undestrand why Matlab makes the following error:
Error using uitable
Functionality not supported with figures created with the figure function. For more information, see Graphics Support in App Designer.
Error in uitable (line 53)
thandle = builtin('uitable', varargin{:});
Error in PF_UNIPD_NS_PVcontrol (line 147)
t=uitable(f,'data',data,'columnname',h)
h = {'Nodo_Matlab' 'Nodo_PowerFactory' 'Modulo_Matlab' 'Fase_Matlab'}
NODI_MAT_DIG = [(1:N_nodi_tot)' nodi_originali]; %19x2 string
aa = abs(En);
bb = (angle(En))*180/pi;
data = [NODI_MAT_DIG, aa, bb];
f = figure;
t = uitable(f,'data',data,'columnname',h)

Accepted Answer

Walter Roberson
Walter Roberson on 13 Oct 2020
Pretty much like it says. When you use a traditional figure, you are not permitted to set the uitable data property to a string() array.
Set it to a cellstr instead:
t = uitable(f, 'data', cellstr(data),'columnname',h)

More Answers (0)

Categories

Find more on Environment and Settings in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!