MATLAB Answers

Save axes plot as '.fig' in a GUI

108 views (last 30 days)
Manuel
Manuel on 9 Sep 2013
Commented: loghman on 4 Feb 2018
I have a GUI in which one an axes is located with a plot and I would like to save this axes as '.fig' file. I have tried with :
[FileName,PathName] = uiputfile;
saveDataName = fullfile(PathName,FileName);
axes(handles.Graph1_axes);
saveas(gca, saveDataName, 'fig');
But this commands save all the GUI interface as '.fig'. Any help will be welcome.
Thanks in advance!

  0 Comments

Sign in to comment.

Accepted Answer

Jan
Jan on 9 Sep 2013
The FIG format contains the complete figure (as the name says already). If you want to save a single axes only and definitely want the FIG format, you can copy the axes to a new figure:
Fig1 = figure;
AxesH = axes;
plot(1:10, rand(10,10));
Fig2 = figure;
copyobj(AxesH, Fig2);
hgsave(Fig2, 'myFigure.fig');

  1 Comment

Manuel
Manuel on 10 Sep 2013
Everything works! Thanks!

Sign in to comment.

More Answers (1)

Sean de Wolski
Sean de Wolski on 9 Sep 2013
You can't directly save just the axes. Instead, use export_fig with the cropping option

  5 Comments

Show 2 older comments
Jan
Jan on 10 Sep 2013
What about using hgsave directly.
loghman
loghman on 4 Feb 2018
copyobj doesn't work for axes with multiple coordinated system. what should i do?
loghman
loghman on 4 Feb 2018
copyobj doesn't work for axes with multiple coordinated system. what should i do?

Sign in to comment.