matlab有函数能自动保存图吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab有函数能自动保存图吗相关的知识,希望对你有一定的参考价值。

用plot画了一个图,有函数能让这个图以matlab的形式自动保存吗

Matlab提供直来接的saveas函数可以将自指知定figure中的图道像

调用举例:

>> h=figure

h =

1

>> plot(rand(2,4))

>> saveas(h,'hello','jpg')

扩展资料:

MATLAB包括拥有数百个内部函数的主包和三十几种工具包。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。

图形处理系统使得MATLAB能方便的图形化显示向量和矩阵,而且能对图形添加标注和打印。它包括强大的二维三维图形函数、图像处理和动画显示等函数。

参考技术A Matlab提供直接的saveas函数可以将指定figure中的图像
例如
x=-pi:pi/20:pi;
for i=1:4
y(:,i)=sin(i*x);
text=['figure',num2str(i)]
figure(i)
plot(x',y(:,i))
title(text)
h1 = figure(i);
name1=['figure',num2str(i),'.jpg']
name1=['figure',num2str(i),'.fig']
saveas(h1,name1);
saveas(h1,name2);
end追问

请问saveas执行后,这个图存哪里了

追答

当前目录下面

追问

能存指定路径吗

追答

好像不行
help saveas
SAVEAS Save Figure or Simulink block diagram in desired output format
SAVEAS(H,'FILENAME')
Will save the Figure or Simulink block diagram with handle H to file
called FILENAME.
The format of the file is determined from the extension of FILENAME.

SAVEAS(H,'FILENAME','FORMAT')
Will save the Figure or Simulink block diagram with handle H to file
called FILENAME in the format specified by FORMAT. FORMAT can be the
same values as extensions of FILENAME.
The FILENAME extension does not have to be the same as FORMAT.
The specified FORMAT overrides FILENAME extension.

Valid options for FORMAT are:

'fig' - save figure to a single binary FIG-file. Reload using OPEN.
'm' - save figure to binary FIG-file, and produce callable
MATLAB code file for reload.
'mfig' - same as M.
'mmat' - save figure to callable MATLAB code file as series of creation
commands with param-value pair arguments. Large data is saved
to MAT-file.
Note: MMAT Does not support some newer graphics features. Use
this format only when code inspection is the primary goal.
FIG-files support all features, and load more quickly.

Additional FORMAT options include devices allowed by PRINT.

本回答被提问者和网友采纳
参考技术B 用saveas就可以,saveas(h,'filename','format') ,h是当前图的句柄,filename打算保存图片的路径,format是保存的格式,可以是jpg或fig等格式。
官方解释:SaveAs on the figure window menu to accessthe Save As dialog, in which you can select a graphics format. Fordetails, see Exporting in a Specific Graphics Format in the MATLAB® Graphicsdocumentation. Sizes of files written to image formats by this GUIand by saveas can differ due to disparate resolutionsettings.
调用举例:
>> h=figure
h =
1
>> plot(rand(2,4))
>> saveas(h,'hello','jpg')

在 MATLAB 中自动将图形写入文件

【中文标题】在 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 中保存时自动删除尾随空格?

怎样用matlab保存剪切的tif图像?

小技巧将matlab的plot出来的图像自动保存为图片

在 Matlab 中保存当前正在运行的脚本

在 MATLAB 中自动将图形写入文件

求款能截屏并且能自动保存的截图工具!!!