How to make a table for a struct that contains elements with more than one number?

3 views (last 30 days)
A struct is defined and it adds values as going: X.a, X.b, X.c. etc.most of them is a single value, but a few are arrays with multiple values, such as X.g(1), X.g(2), etc.
When convert them to table using:
thetable = array2table(X, 'RowNames', FileName, 'VariableNames', structNames);
fig = uifigure('Name', 'Variable');
uitable(fig, 'X', thetable);
It displays a very long horizontal table with correct display for those of single value elements. But for those array elements, it displays 2Xdouble, 3Xdouble, etc. not numbers.
The questions are:
(1) How to display those array element separately to view every value?
(2) How to rotate the table?
Thank you.

Accepted Answer

Voss
Voss on 5 Feb 2025
X = struct('a',1,'b',22,'c',1:3);
FileName = "SoMe/fIlE\NaMe";
thetable = struct2table(X, 'RowNames', FileName);
fig = uifigure('Name', 'Variable');
uitable(fig, 'Data', thetable);
  7 Comments
Voss
Voss on 10 Feb 2025
There don't appear to be any structs in data, only numeric vectors (e.g., "2x1 double", 4.5676, etc.).

Sign in to comment.

More Answers (0)

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Products


Release

R2024b

Community Treasure Hunt

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

Start Hunting!