Save (Axes) As in GUI

11 vues (au cours des 30 derniers jours)
R Hebi
R Hebi le 25 Nov 2019
Commenté : Ankit le 25 Nov 2019
Hi,
I am using Matlab GUI (guide) to do some calculation and the results appear as a curve in figure (axes1). I would like to save the figure of this curve.
I created a push button (pushbutton1), and I inserted many different codes the problem with most of them are
  1. It saves the whole GUI window not only the (axes1)
  2. When the save window is opened to wirte the file name/path, if the user click on cancel it will break down and an eeror is appearing
Thx

Réponse acceptée

Ankit
Ankit le 25 Nov 2019
Modifié(e) : Ankit le 25 Nov 2019
Updated!
Based on your comment I updated the answer
function pushbutton_SaveasImg_Callback(hObject, eventdata, handles)
Fig1 = figure('Units','normalized','Position',[0.1 0.1 0.8 0.8]);
set(Fig1,'Visible','off');
find_leg = findobj(handles.axes4,'tag','legend'); % axes4 is the name of your Axes
% retrieve the legend strings
legendstr=get(find_leg,'String');
newAxes = copyobj(handles.axes4,Fig1); % Copy the appropriate axes
set(newAxes,'Units','normalized','Position',[0.1 0.1 0.8 0.8]);
% recreate the legend
legend(newAxes,legendstr,'Location','northeast');
% Save as Image file.
[FileName,PathName] = uiputfile( ...
{'*.jpg;*.tif;*.png;*.gif','All Image Files';...
'*.*','All Files (*.*)'});
% 2. When the save window is opened to write the file name/path,
% if the user click on cancel it will break down and an error is appearing
% below code avoid the error you are getting
if isequal(FileName,0) || isequal(PathName,0)
disp('User Clicked Cancel.')
else
disp(['User selected ',fullfile(PathName,FileName),...
' and then clicked Save.'])
saveas(Fig1, FileName);
close(Fig1);
end
  2 commentaires
R Hebi
R Hebi le 25 Nov 2019
Thx
But his will save directly rather than have option to add a file name & format
I would like to do it using (uiputfile) if that is possible.
Thx again
Ankit
Ankit le 25 Nov 2019
I updated the answer based on your feedback! You can add the file extension based on your requirements!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Migrate GUIDE Apps dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by