How to stop subsequent plots outputting to the current pane?
161 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Michael O'Brien
am 31 Mär. 2021
Kommentiert: Michael O'Brien
am 1 Apr. 2021
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.
0 Kommentare
Akzeptierte Antwort
Mohammad Sami
am 31 Mär. 2021
To force MATLAB to create new figure, you need to call figure function before calling the plot.
3 Kommentare
Mohammad Sami
am 1 Apr. 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);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!