Effacer les filtres
Effacer les filtres

Multiple ylabels for tiledlayout

7 vues (au cours des 30 derniers jours)
Cunxin Huang
Cunxin Huang le 26 Mar 2024
Modifié(e) : Matt J le 11 Avr 2024
Suppose I am drawing a 4*6 figure with tiledlayout. Now I want to let the first and the second rows of figures share the same ylabel, and so do the third and the fourth rows. I looked for solutions but found nothing useful. I tried to create two different tiledlayout on one figure, but it turns out that tiledlayout function does not allow this. Thus, is there any suggestions?

Réponses (1)

Matt J
Matt J le 26 Mar 2024
Modifié(e) : Matt J le 26 Mar 2024
One approach would be to create a 2x1 tiledlayout where inside each tile you nest another tiledlayout of dimension 2x6. You can facilitate this by downloading nestedLayouts() from the File Exchange,
Example:
[ax,t,T]=nestedLayouts([2,1],[2,6]);
for i=1:numel(ax) %populate all 24 axes with plot data
plot(ax(i),rand(1,5));
end
for i=1:numel(t) %Give each outer tile its own ylabel
ylabel(t(i),"ylabel No. "+i);
end
  5 commentaires
Cunxin Huang
Cunxin Huang le 11 Avr 2024
Yes. But I wonder if there exists a solution for an older version like R2019b.
Matt J
Matt J le 11 Avr 2024
Modifié(e) : Matt J le 11 Avr 2024
I haven't used it myself, but there is this FEX offering,
which has a "Pick of the Week" designation to vouch for it.

Connectez-vous pour commenter.

Produits


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by