在 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) 指定可用于某些格式的附加选项。

print 将当前图形打印到默认打印机...

【讨论】:

谢谢,省了我很多力气=]【参考方案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 中自动将图形写入文件的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB Image Processing Toolbox 官方文档

Matlab图像处理相关

在 Matlab 中读取和写入二进制文件

如何将matlab 中的数据写入现有的word 表格中?

Matlab:将图像序列写入文件夹

matlab中怎样将数据导入导出?