MATLAB Answers

How do I get a zoomed portion of a plot inside a plot, to enhance the visualization?

169 views (last 30 days)
Abhinav Sinha
Abhinav Sinha on 18 Mar 2018
Commented: A Achbak on 11 Sep 2021 at 21:39
Suppose I have a plot, e.g. some function y(x) and I have plotted it. Now, if I wish to zoom a particular portion on the graph and show the zoomed portion inside the same plot (preferably by making a small box), is there any tool to do that with less computation (some GUI, etc.)?
  3 Comments

Sign in to comment.

Accepted Answer

Ahmet Cecen
Ahmet Cecen on 18 Mar 2018
Edited: Ahmet Cecen on 18 Mar 2018
I am giving you the framework that you can use to do this the way you want. Every component of what you asked is there, they are just either placed or formatted differently. Tweaking and formatting is up to you.
r1 = [1:100]'.*rand(100,1);
figure;
a1 = axes();
plot(a1,r1);
a2 = axes();
a2.Position = [0.3200 0.6600 0.2 0.2]; % xlocation, ylocation, xsize, ysize
plot(a2,r1(50:70)); axis tight
annotation('ellipse',[.2 .3 .2 .2])
annotation('arrow',[.1 .2],[.1 .2])
legend(a1,'u')

Community Treasure Hunt

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

Start Hunting!