Subplots with equal "nice" y-axes -- is there a function?
Afficher commentaires plus anciens
Hello,
I thought I had seen a function somewhere that would modify subplots so that each of the plots would have the same scale (i.e., ylim) and all of them fit nicely. Kind of like "auto" for the subplot with the highest amplitude applied to all of the subplots.
Is there such a function, or option for an existing function?
Thanks
Réponse acceptée
Plus de réponses (3)
Jan
le 13 Mar 2012
allYLim = get(AxesHandle, {'YLim'});
allYLim = cat(2, allYLim{:});
set(AxesHandle, 'YLim', [min(allYLim), max(allYLim)]);
The curly braces around 'YLim' in the get command are needed, if AxesHandle is a scalar.
1 commentaire
Jorge MARTINEZ
le 16 Sep 2016
Déplacé(e) : DGM
le 7 Nov 2024
anyways, Jan, your solution works like a charm... as usual ;)
Brett Davenport
le 8 Avr 2018
Modifié(e) : Brett Davenport
le 8 Avr 2018
subplot(1,2,1);plot(t,x);
y1=ylim %gets current limits
subplot(1,2,2);plot(t2,x2);
ylim(y1) %sets limits to that of first subplot
1 commentaire
Nick
le 7 Nov 2024
smooth
Jorge MARTINEZ
le 16 Sep 2016
4 votes
what about "linkaxes" function?
2 commentaires
Brett Davenport
le 8 Avr 2018
Perfect
David Bennetts
le 7 Juin 2020
Worked perfectly for me too. I had to add it add the end of the script after all of the subplot calls.
Catégories
En savoir plus sur Subplots dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!