scaling and change the ylim for subplot

42 views (last 30 days)
I plotted a figure with two y-axis with different y limit
But I would like to limit the yyaxis of the right axis so that right axis starts with the lower limit of the left plot and upper limit of the right plot?
Or if it is possible that the zero-axis of both plots matches?
I manually shifted the right plotted axis so that the zeros matches for both axis.
Thank you very much for your inputs!!

Accepted Answer

Abdolkarim Mohammadi
Abdolkarim Mohammadi on 7 Sep 2020
Edited: Abdolkarim Mohammadi on 7 Sep 2020
You should set ylim() for each axes separately. For example:
x = linspace (0, 6, 51)';
y1 = sin (x);
y2 = cos (x);
yyaxis ('left');
plot (x,y1);
ylim ([-2,2]);
yyaxis ('right');
plot (x,y2);
ylim ([-6,6]);
  4 Comments
Ravindra
Ravindra on 7 Sep 2020
Edited: Ravindra on 7 Sep 2020
Thanks!!!
So every time I need to modify the ylim manually so that it passes with the left side axis. Is it possible to do it automatically?
Abdolkarim Mohammadi
Abdolkarim Mohammadi on 7 Sep 2020
Edited: Abdolkarim Mohammadi on 7 Sep 2020
ylim() only affects the current axis. When the command yyaxis(AA,'right') is executed, all of the future commands (including ylim()) affect the right yyaxis. You have to do this manually because the scale of your data for the left yyaxis and the right yyaxis differs significantly. The left yyaxis and the right yyaxis are separate and the ruler scale in one side does not affect the one on the other side.

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!