3D绘图中的数据相反?

时间:2014-02-12 07:40:25

标签: matlab graph 3d plot mesh

我对绘制3D图表感到困惑。 首先,x轴和y轴的矩阵如下所示。

x =
 0    71   142   213   284   355   426
 0    71   142   213   284   355   426
 0    71   142   213   284   355   426
 0    71   142   213   284   355   426
 0    71   142   213   284   355   426
 0    71   142   213   284   355   426

y =
 0     0     0     0     0     0     0
71    71    71    71    71    71    71
142   142   142   142   142   142   142
213   213   213   213   213   213   213
284   284   284   284   284   284   284
355   355   355   355   355   355   355

,数据如下所示。

Data =
   16       16       16       27       29      24       21
   17       17       15       26       29       16      16
   15       13       12       25       34       14      15
   12       10        9       28       18       11      11
   77        9        6       62        7        9       8
    4        4        4      131        3        4       6

然后我使用了这段代码。

mesh(x,y,Data)
xlabel('x')
ylabel('y')
zlabel('Data')

我得到了这张图:

enter image description here

我感到困惑的是为什么数据(6,4)= 131的点在图中的点(1,4)处。 此外,您可以看到Data(5,1)= 77的点位于图中的点(1,2)处。 为什么图中任何点的位置在上下方向上与矩阵中的位置相反? 这是正常的事吗?或者,我的代码中是否有任何问题。

我是Matlab的新手,但我觉得这种上下颠倒的情节在我的常识中很奇怪。


(编辑)谢谢Dan,然后我将描述为什么数据的确切形状对我很重要。我的工作是测量房间中的某些特定参数,例如湿度。 “空间”测量结果在下面“完全”显示。

16       16       16       27       29      24       21
17       17       15       26       29       16      16
15       13       12       25       34       14      15
12       10        9       28       18       11      11
77        9        6       62        7        9       8
 4        4        4      131        3        4       6

根据数据,房间南方的湿度最高(131)。但是,当我在MATLAB中制作图形时,点131变为“数学模型”的北方向,如上图所示。因此,我很难将该图表放入报告中。我知道我可以旋转图形但是如果我旋转,原点变得很奇怪并且还会导致其他左右反向问题。您可能会说我的图表在数学上是正确的,但使用此反向问题进行报告仍然很奇怪。有没有办法完成这项任务?我试图在矩阵中的上下和左右方向上反转数据,但它没有帮助。

1 个答案:

答案 0 :(得分:1)

131的点不是图中的点(1,4),而是x-y点(213,355),这是完全正确的。所有你需要做的就是获得你想要的东西就是旋转图像......这里没有任何错误。从图窗口旋转非常简单,否则你也可以do it programatically