在Matlab中将绘图保存为PNG格式

10
我有一个绘制时间序列的函数,现在我想将其保存为图片,请问如何实现?
function TimeSeriesImages(a, b, c, d, e, f, g, h, i, j, k, l)
x = [a b c d e f g h i j k l];
ts1 = timeseries(x,1:12);
ts1.Name = 'Monthly Count';
ts1.TimeInfo.Units = 'months';
ts1.TimeInfo.Format = 'mmm dd, yy'
ts1.Time=ts1.Time-ts1.Time(1);
plot(ts1)
end

也许与此相关在这里 - hhh
2个回答

19

Matlab中另一种保存图形的方法是使用变量来处理它们,然后稍后再保存。

例如:

a=bar(...);
b=hist(...);   %some figures
c=plot(...);

saveas(a, 'path\to\file\abc1.png','png');
saveas(b, 'path\to\file\abc2.png','png');
saveas(c, 'path\to\file\abc3.png','png');

从官方Matlab帮助文档中摘录:

saveas - 使用指定格式保存图形或Simulink块图

语法

saveas(h,'filename.ext') 
saveas(h,'filename','format')

描述

saveas(h,'文件名.ext')将具有句柄h的图形或Simulink块图保存到文件filename.ext中。文件的格式由扩展名ext决定。更多信息请参见Matlab帮助。


8
你可以使用带有 -dpng 标志的 print 命令。

1
更多信息请参见Matlab文档中的打印部分。 - Jakub Czaplicki
这种方法稍微好一些,因为您可以更改分辨率。 - Shashank Sawant
这也消除了为每个图形/图表分配一个句柄的需要,很好。 - Bryson S.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接