Put structure data into GUIDE table

3 visualizzazioni (ultimi 30 giorni)
Hello!
I would like to load data from a structure 'struc' into a GUIDE table 'file_table'. The structure has the following fields:
file_name: {8×1 cell}
serial_number: {8×1 cell}
event_date_time: {8×1 cell}
ppv: {8×1 cell}
shot_assignment: {8×2 cell}
instlocs: [8×2 double]
instadd: [8×1 string]
I just use
set(handles.file_table,'Data',struc);
I have tried a whole bunch of changes to the structure (the structure is from someone else's coding), with no success. What am I doing wrong? I can trim the instlocs and shot_assignment fields to be 8x1.
Thanks!.

Risposta accettata

Geoff Hayes
Geoff Hayes il 29 Set 2021
Douglas - perhaps you need to convert the struct to a table before setting the uitable. Try using struct2table to see if that helps.
  3 Commenti
Geoff Hayes
Geoff Hayes il 30 Set 2021
Douglas - once you convert the struct to a table, then convert the table to a cell array with table2cell. That will just give you the data (not the column headers). For example (from the struct2table function),
S.Name = {'CLARK';'BROWN';'MARTIN'};
S.Gender = {'M';'F';'M'};
S.SystolicBP = [124;122;130];
S.DiastolicBP = [93;80;92];
T = struct2table(S);
C = table2cell(T);
set(handles.uitable1, 'Data', C, 'ColumnName', T.Properties.VariableNames);
Douglas Anderson
Douglas Anderson il 1 Ott 2021
Thank you very much, Geoff!
That works. Amazing how roundabout one sometimes has to go.
Doug

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Migrate GUIDE Apps in Help Center e File Exchange

Prodotti


Release

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by