在我的 MATLAB 程序中,我必须运行 500 次 for 循环,并且每次循环运行时它都会绘制一个图形,因此如果我运行该程序,将会有 500 个(.fig 文件),这可能会使我的系统挂起。
那么有没有什么方法可以让我自动将每次循环后产生的输出保存在某个文件夹中?
如果有某些程序,参考该程序将非常有帮助!
答案1
您可以使用saveas
方法。
例如,要将简单的条形图保存为文件png
:
x = [2 4 7 2 4 5 2 5 1 4];
bar(x);
saveas(gcf,'Barchart.png')
或者作为eps
文件:
saveas(gcf,'Barchart','epsc')
确保使用的文件名依赖于每次循环迭代中都会发生变化的内容,以免覆盖文件。您可以使用sprintf
创建新文件名,例如保存文件eps
:
for k = 1:500
filename = sprintf('%s_%d','Barchart',k);
% Create the plot
saveas(gcf,filename,'epsc')
end
请参阅链接文档了解更多配置和文件类型。