Saving figures in m-file

I am processing data and have several m-files at the time that I want to run and autosave .mat and .fig for the file.
I use following codes, like:
h(1) = figure
plot(x2,y2)
h(2) = figure
plot(x,y)
hold on
xlabel('x')
ylabel('log(y)')
save(mfilename)
savefig(h,[mfilename,'plots.fig']);
close(h)
It works fine the first time I run it. When I then go to a second .m file using same code I get the folioing error:
Error using savefig (line 33)
H must be an array of handles to valid figures.
Any idea what is wrong?

2 Comments

when you run the second m file are the figures still open? I see that in the fist one's example you close(h). if you do not reassign h then there isn't anything to save.
Yes, I found what the error was, The problem was that I had forgot to assign one of the plots a h value so therefore the array was wrong.

Sign in to comment.

Answers (0)

Categories

Find more on Printing and Saving in Help Center and File Exchange

Asked:

on 29 Sep 2014

Commented:

on 29 Sep 2014

Community Treasure Hunt

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

Start Hunting!