Saving figures in m-file

10 views (last 30 days)
Lizan
Lizan on 29 Sep 2014
Commented: Lizan on 29 Sep 2014
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
Joseph Cheng
Joseph Cheng on 29 Sep 2014
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.
Lizan
Lizan on 29 Sep 2014
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

Community Treasure Hunt

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

Start Hunting!