problem with columnWidth..how solve it

size(T)
ans =
73 9
T =
73×9 table
T.ColumnWidth={50,30,30,30,30,30,30,30,30}
Error using .
To assign to or create a variable in a table, the number of rows must match the height of the table.

12 Comments

The size of the data to be added to the table must be compatible with the dimensions of the table, which is what the error message (explicitly) states as well.
Use -
T.ColumnWidth = [50;30;30;30;30;30;30;30;30];
aldo
aldo on 22 Oct 2023
Moved: Dyuman Joshi on 22 Oct 2023
Error using .
To assign to or create a variable in a table, the number of rows must match the height of the table.
Error in CaricaListaStrategie_Struct (line 60)
T.ColumnWidth=[50,30,30,30,30,30,30,30,30];
aldo
aldo on 22 Oct 2023
Moved: Dyuman Joshi on 22 Oct 2023
Error using .
To assign to or create a variable in a table, the number of rows must match the height of the table.
Error in CaricaListaStrategie_Struct (line 60)
T.ColumnWidth=[50;30;30;30;30;30;30;30;30];
Can you attach the variable T?
aldo
aldo on 22 Oct 2023
Moved: Dyuman Joshi on 22 Oct 2023
here is the file
Dyuman Joshi
Dyuman Joshi on 22 Oct 2023
Edited: Dyuman Joshi on 22 Oct 2023
I somehow mixed up the dimensions, Sorry.
The table has 73 rows, thus the data for ColumnWidth should have 73 rows as well.
Do you want to add the data related to a variable present in the column? Or is there a criteria/logic for adding that data?
It seems like you are confusing the table data object with the uitable graphics object.
If you have a uitable (UIT) whose data is a table variable (T)
UIT = uitable(); % create a uitable (graphics object)
UIT.Data = T; % set the uitable's Data to be the table variable T
Then you can set the ColumnWidth of the uitable like this:
UIT.ColumnWidth = {50,30,30,30,30,30,30,30,30}; % UIT has 9 columns
However, using the same syntax on the table variable T tries to add a variable/column called "ColumnWidth" to the table T, which produces an error in this case because the number of values given doesn't match the number of rows of T.
T.ColumnWidth = {50,30,30,30,30,30,30,30,30} % T has 73 rows, so this doesn't work
size(T)
ans =
73 9
I want to set the maximum width for the columns (9)
And what does width mean here?
aldo
aldo on 22 Oct 2023
Moved: Voss on 22 Oct 2023
i create table with
"T=table('Size',[nrows,numel(VNAMES)],'VariableTypes',VTYPES,'VariableNames',VNAMES);
At this point I don't understand how I can set the width of the columns
i can't read this
I want to widen the column
ok thank i solve it|

Sign in to comment.

Answers (0)

Asked:

on 22 Oct 2023

Commented:

on 23 Oct 2023

Community Treasure Hunt

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

Start Hunting!