使用saveas函数:
h=figure;
plot(x,y,'-bs','Linewidth',1.4,'Markersize',10);
% ...
saveas(h,name,'fig')
saveas(h,name,'jpg')
这种方法可以绘制图形并自动保存为 .jpg 和 .fig。您无需等待绘图出现并在菜单中单击“另存为”。如果需要绘制/保存大量图像,则可以使用此方法。
如果您真的不想让绘图出现(它仍然必须被加载,无法避免,否则也没有可保存的内容),则可以隐藏它:
h=figure('visible','off')
使用saveas函数保存的分辨率不如手动使用"文件-->另存为"选项保存的好. 推荐使用hgexport命令进行保存,操作步骤如下:
hgexport(gcf, 'figure1.jpg', hgexport('factorystyle'), 'Format', 'jpeg');
这将完全像手动保存图形一样。
来源: http://www.mathworks.com/support/solutions/en/data/1-1PT49C/index.html?product=SL&solution=1-1PT49C
我认为你无法在不出现它的情况下保存它,但是只要使用print命令就可以以多种格式保存。请参阅此处发布的答案:在Matlab中保存imagesc输出
imwrite(A,filename)
将图像数据 A 写入由 filename 指定的文件中,并从扩展名推断文件格式。
现在(2017年5月),MATLAB仍然缺乏一种强大的方法来导出图形,特别是在GNU/Linux系统中批量导出图形时。最好的选择是使用扩展export_fig。
只需从Github下载源代码并使用即可:
plot(cos(linspace(0, 7, 1000)));
set(gcf, 'Position', [100 100 150 150]);
export_fig test2.png
尝试执行以下代码: plot(var); saveFigure('title'); 它会自动保存为jpeg格式。
savefig
而不是 saveFigure
。 - Franklin Yu