Effacer les filtres
Effacer les filtres

Fitting a uitable to a subplot

9 vues (au cours des 30 derniers jours)
Jason
Jason le 23 Déc 2016
Commenté : Emily Pitts le 28 Juil 2022
Hi. I want to programatically add a uitable to a subplot position (without using guide). Whilst I have been able to do this, Im not able to fill the subplot region. Is it possible to do this (at least in the horizontal dimension)
This is my code:
% create the data
% Create the column and row names in cell arrays
cnames = {'Z','FMc','FMc','AvgI'};
rnames = {'1','2','3','4','5','6','7','8'};
% Create the uitable
t = uitable(f1,'Data',data,...
'ColumnName',cnames,...
'RowName',rnames,...
'ColumnWidth',{50});
subplot(1,2,2),plot(3)
pos = get(subplot(1,2,2),'position');
delete(subplot(1,2,2))
set(t,'units','normalized')
set(t,'position',pos)
I was wondering if the ColumnWidth variable could somehow be calculated from the subplot width?

Réponse acceptée

Jan
Jan le 26 Déc 2016
% Auto-resize:
jScroll = findjobj(t);
jTable = jScroll.getViewport.getView;
jTable.setAutoResizeMode(jTable.AUTO_RESIZE_SUBSEQUENT_COLUMNS);
drawnow;
  4 commentaires
Jan
Jan le 23 Août 2017
@Spencer G: You are right, there is not auto-resizing of rows. I've found some links about auto-resizing of tables vertically:
But I do not have time to implement this in Matlab currently.
Emily Pitts
Emily Pitts le 28 Juil 2022
I've been looking for a solution to this for days, and your solution worked perfectly in MATLAB 2022a. Thanks!

Connectez-vous pour commenter.

Plus de réponses (1)

M E
M E le 29 Juin 2018
This one might also be useful: How do I place a uitable in a subplot

Catégories

En savoir plus sur Interactive Control and Callbacks dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by