Save a figure with two plots

This seems like it should be very simple, but it doesn't work. I am plotting two lines in a figure, and want to save the figure as an image. However, the handle h is a vector and saveas doesn't like it. I can't find any help with this in the documentation. What am I missing?
h = plot(price,supply,price,demand)
saveas(h,'myplot','png')

2 Kommentare

Azzi Abdelmalek
Azzi Abdelmalek am 11 Jul. 2012
give us a real exemple
Joseph Cullen
Joseph Cullen am 12 Jul. 2012
This is the real example. It is a simple supply and demand plot.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Kevin Claytor
Kevin Claytor am 11 Jul. 2012

1 Stimme

Your code is just saving the current axes, you want;
hfig = figure;
hplot = plot(price,supply,price,demand)
saveas(hfig,'myplot','png')

2 Kommentare

Joseph Cullen
Joseph Cullen am 12 Jul. 2012
Bearbeitet: Joseph Cullen am 12 Jul. 2012
Works! Thanks.
so the handles returned by plot are for each plot in the figure. hfig=figure; gives the handle to the whole figure.
Thats what I need to know.
To be precise, the handles returned by plot are handles each of the line objects that make up the plot.
h = plot(price, supply, price, demand); %handles to 2 line objects
ha = get(h(1),'parent'); %handle to axes object
hf = get(ha,'parent'); %handle to figure object

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating, Deleting, and Querying Graphics Objects finden Sie in Hilfe-Center und File Exchange

Produkte

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by