Producing multiple figures in a 'for' loop

30 views (last 30 days)
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!

Accepted Answer

Walter Roberson
Walter Roberson on 6 Mar 2014
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 Comments
Jay
Jay on 6 Mar 2014
Thank you, that works fully. Much appreciated!

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots 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!