Producing multiple figures in a 'for' loop

Hello,
I would like to produce mutliple figures (i.e figure 1,2,3..n on separate windows). I am using different values of 'n' in my code and this means the plotting graph changes. How do I go about getting separate windows for each iteration? Currently the final iteration is produced only. Thanks! Note I am calling function 'myfunc' that I have made and produces a vector that I plot.
Code:
clear
for n=1:20
x=linspace(-5,5,n+1) %linear spacing of n+1 x values on [-5,5]
y=cos(x) %function points given exactly
z=linspace(-5,5,200) %equally spaced vector of 200 points on [-5,5]
p=myfunc(x,y,z) %calling 'myfunc' produces points to be plotted against z
fig=plot(x,y,'o',z,cos(z),'-b',z,p,'--r')
set(fig(1),'MarkerFaceColor','g')
end
Thanks for any help!

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 6 Mär. 2014

2 Stimmen

Right after the "for", use
thisfig = figure();
I also recommend parenting all the graphics updates; see http://www.mathworks.co.uk/matlabcentral/answers/22208-show-figure

2 Kommentare

Jay
Jay am 6 Mär. 2014
Thank you, that works fully. Much appreciated!
Mahesh Yumnam
Mahesh Yumnam am 17 Nov. 2020
Thank you. This solved my problem

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Graphics Performance finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by