在 MATLAB 中自动将图形写入文件
Posted
技术标签:
【中文标题】在 MATLAB 中自动将图形写入文件【英文标题】:Write a figure to a file automatically in MATLAB 【发布时间】:2010-10-11 01:02:05 【问题描述】:有谁知道是否可以在 MATLAB 中自动将数字写入 .eps 文件?
我正在运行一个生成大量图表的脚本,如果我不必手动保存每个图表就好了!
【问题讨论】:
可能与here有关。 【参考方案1】:print function 这样做:
打印图形或保存为特定文件格式...
print(filename,formattype)
将当前图形保存到使用指定文件格式的文件中,例如print('BarPlot','-dpng')
。如果文件名不包含扩展名,则 print 会附加相应的扩展名。
print(filename,formattype,formatoptions)
指定可用于某些格式的附加选项。
【讨论】:
谢谢,省了我很多力气=]【参考方案2】:print 或 saveas 可以解决问题。
saveas(fig_handle, 'filename','eps')
print('-deps',fig_handle)
print -deps 1
如果要指定输出文件名,最好使用 saveas。
【讨论】:
其实你可以用 -print -epsc filename 指定文件名【参考方案3】:这是在this other question 中使用PRINT 命令回答的。尽管该问题涉及制作 .tiff 图像,但修改这些答案中给出的代码以编写 .eps 应该很简单。
【讨论】:
我没有加载或加载图像,这是一组自动生成的图表,所以我不确定是否适用相同的语法。 虽然问题的文字只显示了IMREAD和IMWRITE,但部分答案显示了如何使用PRINT函数输出绘制的图像。【参考方案4】:假设你在一个循环中生成 N 个数字,那么你应该试试命令行:
saveas(gca,sprintf('Figure%02d.pdf',N ));
它产生 N 个数字 Figure1.pdf - FigureN.pdf
saveas(gca,sprintf('Figure%02d.eps',N ));
它产生 N 个数字 Figure1.eps - FigureN.eps
也可以使用gcf
代替gca
。第一个命令行是更好的解决方案。
希望这能解决您的问题。
【讨论】:
以上是关于在 MATLAB 中自动将图形写入文件的主要内容,如果未能解决你的问题,请参考以下文章