(Matlab)如何从2D实验数据中制作3D图?

时间:2014-11-05 00:46:19

标签: matlab plot 3d

有2D实验数据。

z=load('data.txt');
x=z(:,1);
y=z(:,2);
plot(x,y)][1]

我希望像链接一样将其制作成3D。

这是一个链接。 3d plot with given 2d data

1 个答案:

答案 0 :(得分:0)

问题和答案有点误导,因为问题实际上不是关于数据而是钟函数(或三角函数)。它们是对称的并且具有相应的2D版本(参见:http://en.wikipedia.org/wiki/Gaussian_function#Two-dimensional_Gaussian_function)。

y=exp(-x.^2/2); %1D
z=exp(-(X.^2+Y.^2)/2); %2D

然而,一般情况并非如此。例如,您的数据不是2D:

z=load('data.txt');
x=z(:,1);
y=z(:,2);

x是1D,y是您的因变量。如果x和y是独立的,你将得到第三个变量(例如z):

x=[0,1,2];
y=[0,1,2];
z=[1,2,3;
   2,2,2;
   3,2,1];

z中的条目则为z(x,y)(例如z(3,3)= 1)。

总结一下这个混乱:

绘制1D函数时,它以2D(x,y)绘制, 当你绘制2D函数时,它以3D(x,y,z),(x,y,颜色)或(x,y,z和颜色)绘制(后者是在上述问题中使用的)。