I have something like
% Code running to generate x- and y- data
h = plot(xData, yData,'propertyname', 'propertyvalue')
save('Filename')
When I open 'Filename.mat' I can see 'h' in the workspace with all the properties of the line I plotted as '1x1 Line'.
I would like to, in a different script, create a new figure and axes and plot that line with all the properties it has. I know how to get all the properties using h.XData, h.YData, h.MarkerSize, etc, but I would like there to be somemore efficient command like
f=figure
set(f,'addplot',h)
Thanks!

2 commentaires

dpb
dpb le 16 Juin 2019
"...would like there to be somemore efficient command"
There is --it's savefig and openfig
Nick Brewer
Nick Brewer le 16 Juin 2019
But I would like to be able to save several different plots and later, along with the saved properties, mix and match them in different figures.

Connectez-vous pour commenter.

 Réponse acceptée

You cannot directly copy a line() object to a figure. You can copy a line() object to an axes, or you can copy an axes to a figure.
%entire axes
f = figure;
hax = get(h,'Parent');
copyobj(hax, f);
or
%line only
f = figure;
fax = axes('Parent', f);
copyobj(h, fax);

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by