Matlab 3d绘图/网格为三列矩阵

时间:2014-04-04 20:24:04

标签: matlab matrix 3d plot mesh

我有一个三列矩阵[年,月,数据],我试图制作一个比较多年来数据月度趋势的图表。我尝试使用plot3,mesh和ribbon进行此操作。

Plot3(年,月,数据)让我非常接近我需要的东西,但即使它从一年跳到下一年,数据也全部连接,所以我得到的看起来很像涂鸦而不是一个好的每年的行。

我认为使用网格或功能区可能会解决这个问题,但是因为网格的格式是(X,Y,Z),其中Z是矩阵,如果我分别处理我的三列,我就会卡住#&# 39; m只留下Z的矢量。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

您需要重新格式化矩阵[年月数据]以使用网格或功能区。例如,如果您的原始矩阵是这样的:

[year month data]
 2001  1   100
 2001  2   101
 2001  3   102
 2002  1   104
 2002  2   105
 2002  3   106

然后你这样画:

year=[2001,2002];
month=[1,2,3];
data=[100,104;101,105;102,106];
mesh(year,month,data);
% if it doesn't work, replace the last line with follow
% mesh(year,month,data');