用MATLAB的的小伙伴应该知道,有些程序跑完有时候需要很长时间,将运行结果的数据或者画得图保存起来,可以方便下次使用,非常方便。

保存数据与图像可以使用save函数

save(filename) 将当前工作区中的所有变量图像保存在 MATLAB® 格式的二进制文件(MAT 文件)filename 中。如果 filename 已存在,save 会覆盖该文件。

%以下两种方法等效,均表示保存所有变量到test.mat文件中
save test.mat   
save('test.mat') 

save(filename,variables) 仅保存 variables 指定的结构体数组的变量或字段。

%以下两种方法等效,均表示保存变量X到test.mat文件中
save test.mat X Y
save('test.mat','X','Y') 

save(filename,variables,fmt) 以 fmt 指定的文件格式保存。variables 参数为可选参数。如果您不指定 variables,save 函数将保存工作区中的所有变量。

%以下两种方法等效,均表示变量X和Y保存ASCII格式的文件中

save('pqfile.txt','X','Y','-ascii')

save pqfile.txt X Y -ascii

type('pqfile.txt')
%type 函数显示文件内容

save(filename,variables,version) 保存为 version 指定的 MAT 文件版本。variables 参数为可选参数。

save(filename,variables,version,'-nocompression') 将变量保存到 MAT 文件,而不压缩。'-nocompression' 标志仅支持 7.3 版的 MAT 文件。因此,必须将 version 指定为 '-v7.3'。variables 参数为可选参数。

save(filename,variables,'-append') 将新变量添加到一个现有文件中。如果 MAT 文件中已经存在变量,则 save 会使用工作区中的值覆盖它。

%以下两种方法等效,均表示变量a添加到文件test.mat中

save('test.mat','a','-append')

save test.mat a -append)

保存单个变量

若是有abcde等多个变量,你只想保存变量a,可以通过一下方式来保存变量a,其中filename为保存的名称

save filename a

导入保存的数据

load('test.mat')
通过 whos 函数检查文件内容。 
whos('-file','test.mat')

变量格式说明

variables 输入的格式要保存的变量
var1,...,varN保存列出的变量,指定为单个字符向量或字符串。
可使用 '*' 通配符来匹配模式。例如,save('filename.mat','A*') 会将以 A 开头的所有变量保存到文件中。
'-regexp',expr1,...,exprN仅保存名称与正则表达式匹配的变量,指定为字符向量或字符串。例如,save('filename.mat','-regexp','^Mon','^Tues') 仅将以 Mon 或 Tues 开头的变量保存到文件中。
'-struct',structName将 structName 指定的标量结构体的字段作为单个变量存储在文件中。例如,save('filename.mat','-struct','S') 保存标量结构体 S
'-struct',structName,field1,...,fieldN将指定标量结构体的指定字段作为单个变量存储在文件中。例如,save('filename.mat','-struct','S','a','b') 保存字段 S.a 和 S.b
'-struct',structName,'-regexp',expr1,...,exprN仅存储名称与正则表达式匹配的字段,指定为字符向量或字符串。

可选文件格式

fmt 的值文件格式
'-mat'

二进制的 MAT 文件格式。

'-ascii'

具有 8 位精度的文本格式。

'-ascii','-tabs'

具有 8 位精度的以制表符分隔的文本格式。

'-ascii','-double'

具有 16 位精度的文本格式。

'-ascii','-double','-tabs'

具有 16 位精度的以制表符分隔的文本格式。

单独保存图像可以使用savefig函数

​
savefig(filename) 
%将当前图窗保存到一个名为 filename.fig 的 FIG 文件。

savefig(H,filename) 
%将由图形数组 H 确定的图窗保存到名为 filename.fig 的 FIG 文件。

​

示例如下

x=0:100;
h=figure;
plot(x,sin(x));
savefig(h,myfig);

以上就是今天的内容,这篇文章能帮到你是我写作的意义所在,有任何问题可以评论或私信。当然,您的点赞与关注也是对我最大的支持与肯定,也是我继续写作的动力源泉。

了解更多教程可关注公众号

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐