Saving the plot after modifications in the GUI - Matlab

4 views (last 30 days)
I have a problem with capturing the plot in the gui and exporting it to the png. I tried already saveas, export_fig and getframe, but still I am not getting that what I want. Basically I am creating the graph, which can be then modified with the use of displayed tools. And at the end I want to save only the plot in good quality with the "Save plot" button , that would simly screenshot or save the plot with all modifications. It is worth to mention that when I am using previously mentioned fuctions it is saving the screenshot of the whole gui, not just plot. I already checked internet to get the answer, but still my problem is not resolved.

Accepted Answer

Ankit on 12 Nov 2019
Hi Adam,
In the below example, first you need to copy the UIAxes to the temporary figure. And then you can save it as *.png.
function saveplot_Callback(app, event)
% Create a temporary figure with axes.
fig = figure;
figAxes = axes(fig);
% Copy children (lines).
copyobj(app.UIAxes.Children, figAxes);
% Copy titles and labels. You can modify this based on your requirement.
copyobj([app.UIAxes.XLabel app.UIAxes.YLabel app.UIAxes.Title], figAxes);
% Save as *.png file.
saveas(fig, 'myFigure.png');

More Answers (0)

Community Treasure Hunt

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

Start Hunting!