Saving Lots of Plots as Variable Changes in Time

4 visualizzazioni (ultimi 30 giorni)
Alright, this may be a simple question, but I am still learning. I am trying to generate a file with a variable number of plots, perhaps 10 per page. I have a variable, a, that I would like to change, and every time it changes I want a new plot. I was planning on doing this in a for loop like so:
for a=400:5:500
b(a)=equation
function
function
function
plot(output,'r');
axis([0 max(output)+10 -20 400])
hold on
plot(my data,'k'); %as background to see changes
hold off
end
Ideally, I would have 50 plots saved somewhere with all the different values of a worked through the functions. As it is, I get one plot with the final value of a input, which I expected due to the way I currently have it written.
I am also thinking it would be fun to make a movie showing the change in 'a' as it changes for each frame.
Any advice?

Risposta accettata

Iain
Iain il 18 Giu 2013
for a = 400:5:500
% do stuff to get your results.
figure(n)
plot(output,'r');
axis([0 max(output)+10 -20 400])
hold on
plot(my data,'k'); %as background to see changes
hold off
saveas(n,[folder '\' filename num2str(a) '.png'])
% eg saveas(n,['D:\My random storage location\' 'images' num2str(a) '.png'])
end
That'll save it all to file. (n can be any positive integer)
Look up the help documentation for "avifile" to get some of the code you need for creating avi files.
  2 Commenti
Tom
Tom il 18 Giu 2013
A lesson I learned from leaving a similar sort of program running overnight is to get rid of the figure once it's saved...
close(n)
Iain
Iain il 18 Giu 2013
And depending on what else you're doing/have done its best to make n an unusual number, like 171

Accedi per commentare.

Più risposte (1)

K
K il 18 Giu 2013
Thank you! That works great

Categorie

Scopri di più su Environment and Settings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by