How to stop subsequent plots outputting to the current pane?

188 vues (au cours des 30 derniers jours)
Michael O'Brien
Michael O'Brien le 31 Mar 2021
On this page it states:
Description
subplot divides the current figure into rectangular panes that are numbered rowwise. Each pane contains an axes object. Subsequent plots are output to the current pane.
How do I get it to stop doing that?
If I've called subplot previously then I call plot in the command window to quickly check some data the new plot updates the last plotted subplot.
Thank you for your help in advance.

Réponse acceptée

Mohammad Sami
Mohammad Sami le 31 Mar 2021
To force MATLAB to create new figure, you need to call figure function before calling the plot.
  3 commentaires
Mohammad Sami
Mohammad Sami le 1 Avr 2021
Unfortunately there is no such option. The only way you can ensure the plot goes where you want it to go, you should pass the axes handle as the first argument of your plot function. This would ensure the plotting uses the correct axes. You can also alternatively call axes(existing), subplot(existing), figure(existing) to make them the current axes / current figure that will be used to plot.
% example
f = figure;
a = axes(f);
plot(a,1:10,1:10);
f2 = figure;
a1 = subplot(2,1,1);
plot(a1,1:10,1:10);
a2 = subplot(2,1,2)
plot(a2,1:10,1:10);
hold(a1,'on');
plot(a1,10:-1:1,1:10);
subplot(a2);
plot(10:-1:1,1:10);
figure(f);
hold(gca,'on');
plot(10:-1:1,1:10);
Michael O'Brien
Michael O'Brien le 1 Avr 2021
ok, so if I wanted to do a quick plot to check some data without it updating the last subplot I would type
figure; plot(x,y);
in the command window?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur 2-D and 3-D Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by