MATLAB:为For循环中的图选择标题,xlabel,ylabel

时间:2019-04-26 13:12:07

标签: matlab for-loop plot

在Matlab中,我通过for loop输出一系列绘图。通过要绘制的for循环迭代的数据被构建在多维矩阵中。但是,我需要在for循环中使用titlexlabelylabel,以便通过for循环为每次迭代更改其选择的字符串。

代码如下:

lat = [40 42 43 45 56]'
lon = [120 125 130 120 126]'
alt = [50 55 60 65 70]'
time = [1 2 3 4 5]'
position = cat(3, lat, lon, alt);

for k = 1:3
figure
plot(time, position(:,k),'LineWidth', 2, 'Color', 'b')
xlabel('Latitude Time');
ylabel('Latitude Mag');
title('Time v. Latitude');
end 

如何获取绘图以将for循环中的标签输出为:

第一次迭代:

xlabel =纬度时间 ylabel =纬度 title =时间与纬度

第二次迭代:

xlabel =经度时间 ylabel =经度 title =时间与经度

第三次迭代:

xlabel =海拔时间 ylabel =海拔高度 title =时间与海拔

1 个答案:

答案 0 :(得分:1)

根据评论中的建议,使用单元格数组作为标签并对其进行索引:

my_xlabels = {'Latitude Time';'Longitude Time';'Altitude Time'};
my_ylabels = {'Latitude Mag';'Longitude Mag';'Altitude Mag'};
my_titles = {'Time v. Latitude';'Time v. Longitude';'Time v. Altitude'};

for k = 1:3
   figure
   plot(time, position(:,k),'LineWidth', 2, 'Color', 'b')
   xlabel(my_xlabels{k});
   ylabel(my_ylabels{k});
   title(my_titles{k});
end