Multiple ylabels for tiledlayout

19 visualizzazioni (ultimi 30 giorni)
Cunxin Huang
Cunxin Huang il 26 Mar 2024
Modificato: Matt J il 11 Apr 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?

Risposte (1)

Matt J
Matt J il 26 Mar 2024
Modificato: Matt J il 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 Commenti
Cunxin Huang
Cunxin Huang il 11 Apr 2024
Yes. But I wonder if there exists a solution for an older version like R2019b.
Matt J
Matt J il 11 Apr 2024
Modificato: Matt J il 11 Apr 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.

Accedi per commentare.

Categorie

Scopri di più su Axes Appearance in Help Center e File Exchange

Prodotti


Release

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by