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

205 views (last 30 days)
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
Abhinav Sinha
Abhinav Sinha on 18 Mar 2018
No, I do not need a subplot. This needs to be done in the same plot. Something like this, which I have done by creating a box of some dimension and then placing it in a suitable position.

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')

More Answers (1)

Junaid Qadir
Junaid Qadir on 7 Mar 2019
How can I zoom the subplot within same plot?

Categories

Find more on Two y-axis in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!