Linking x and y axis zoom in subplot

145 views (last 30 days)
Austin Matuszewski
Austin Matuszewski on 3 Aug 2020
Edited: Adam Danz on 14 Aug 2020
Hi I am trying to link the x and y axis of these subplots together for when the user uses the mouse wheel to scroll i would like both to be zoomed in.

Answers (1)

Adam Danz
Adam Danz on 3 Aug 2020
Edited: Adam Danz on 4 Aug 2020
Link the xlim and ylim properties.
Or use or linkaxes()
Here's a demo. It uses tiledlayout instead of subplot but you can easily apply this to subplot as well by replacing "nexttile" with "subplot(___)" and removing "tiledlayout".
x = rand(1,100)-.5 *10;
y = rand(1,100)-.5 * 5;
figure()
tiledlayout(1,2)
h(1) = nexttile;
plot(h(1), x,y,'o')
h(2) = nexttile;
plot(h(2), x,y,'o')
linkprop(h, {'xlim','ylim'})
% OR
% linkaxes(h)
  2 Comments
Austin Matuszewski
Austin Matuszewski on 4 Aug 2020
What would I use instead of the H?
Adam Danz
Adam Danz on 4 Aug 2020
Edited: Adam Danz on 14 Aug 2020
H are the axis handles.
Example
h(1) = subplot(1,2,1);
h(2) = subplot(1,2,2):
linkaxes(h)
or
sp1 = subplot(1,2,1);
sp2 = subplot(1,2,2);
linkaxes([sp1,sp2])
Please take a moment to accept answers to your questions if the answers solved your problems. That's how the volunteers are 'thanked'. Here are your questions:

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!