【发布时间】:2021-07-04 08:23:26
【问题描述】:
我有一个表格,其中包含从我想要制作等高线图的 csv 中提取的值。 我们以这张表为例
tdata.x = [1;2;1;2];
tdata.y = [3;3;4;4];
tdata.z = randn(4,1);
tdata=struct2table(tdata);
>> tdata
tdata =
4×3 table
x y z
_ _ _______
1 3 0.53767
2 3 1.8339
1 4 -2.2588
2 4 0.86217
我想以此为轴,以便我可以用它来绘制轮廓,所以原则上我想要一个 2x2 z 矩阵,其中行/列分别由 y 和 x 给出,在这个方向上:
x 1 2
y
3 0.53767 1.8339
4 -2.2588 0.86217
其中第一行是 x 坐标,第一列是 y 坐标,中间是对应的 z 值。也就是说(x,y)=(1,4)对应的z值是-2.2588。
注意,我将把这个网格用于以后的其他事情,所以涉及插值的解决方案是无效的,而且数据保证在网格上给出。
【问题讨论】:
-
请注意,如果我没记错的话,等高线图总是暗示您将创建的任何网格中的点之间的一些插值。
-
提到等高线图可能会产生误导,我只想要 X、Y 和 Z 网格网格矩阵,然后可以使用它们来制作等高线。我希望矩阵本身只包含数据,因为我也有其他用途。我不反对等高线/冲浪类型图所需的插值。
标签: arrays matlab matlab-table