在每个循环Matlab中更改图名称

时间:2017-01-27 12:35:21

标签: matlab loops plot matlab-figure

我是Matlab的初学者,但我必须将它用于我的硕士论文......

我必须更改我的数字的名称以及我为每个使用函数" eval"尝试的循环保存的文件的名称。如图中的名称应该写成"图 - 在每个循环中将改变的日期"但我使用它的方式是错误的。另一个功能可以做什么呢?或者我如何更改eval的设置?

NAME={'Sept-Oct 2015','Nov 2015','Jan-Fe 2016','Fev 2016','Mars-Av 2016','Av-Mai 2016','Juin 2016','Juil 2016','Août 2016','Sept 2016','Oct 2016','Nov 2016','Déc 2016'};

for k=1:13
plot(time,data,'g');
eval(title('Figure -' NAME{1,k},'fontsize';14))
axis tight
eval(saveas(gcf,'Figure -' NAME{1,k},'eps'))
end

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

如果我的意图正确的话,这是你的代码的固定版本,只需要很小的改动。

NAME={'Sept-Oct 2015','Nov 2015','Jan-Fe 2016','Fev 2016','Mars-Av 2016','Av-Mai 2016','Juin 2016','Juil 2016','Août 2016','Sept 2016','Oct 2016','Nov 2016','Déc 2016'};

for k = 1:13
    plot(time,data,'g');
    title(['Figure -' NAME{1,k}],'fontsize',14)
    axis tight
    saveas(gcf,['Figure -' NAME{1,k}],'eps')
end

但是,现在你绘制相同数字的13倍(标题不同),所以我猜datatime应该以某种方式编入索引。另请注意,这会更改图形的标题(打印在其中),而不是名称(显示在窗口/选项卡的顶部)。