Matlab(2): 保存多张图像和变量

最近批量跑实验的时候,实验给了不同的设置,希望每一种设置的情况下,都能够保存实验结果图片和一些中间变量,并且不同的设置给不同的命名。

 

举一个最简单的例子:

for i = 1: 1: 9

  ......

  x(i) = 1;

  y = 2*x(i);

  figure();

  plot(...);

  ......

end

我希望保存i从1到9这九种情况的figure,以及这九种情况的y。

 

解决方法:

给不同的图片和变量设置不同的名字,名字里面如果包含比如变量i,可以用num2str(i)转化成string,字符串拼接用strcat。

h = figure();

saveas(h, strcat('fig',num2str(i),'.jpg'),'jpg');

save(strcat('y',num2str(i),'.mat'),'y');

或者save(strcat('y',num2str(i),'.mat'))保存当前的workspace。

 

例子的最终代码:

for i = 1: 1: 9

  ......

  x(i) = 1;

  y = 2*x(i);

  h = figure();

  plot(...);

  saveas(h, strcat('fig',num2str(i),'.jpg'),'jpg');

  save(strcat('y',num2str(i),'.mat'),'y');

  ......

end

posted on 2015-03-04 13:58  蓝色泡泡兔  阅读(1710)  评论(0编辑  收藏  举报