Matlab 数据等高线图

Matlab 数据等高线图,matlab,contour,Matlab,Contour,我有x,y,z的值,其中x,y坐标和z在x,y的属性值。如何在Matlab中绘制轮廓?按照轮廓帮助的说明,is给了我直线,这是错误的,为什么x,y是分散的值 还有别的选择吗 这是我的数据样本 x y z 374268.5544 675550.1559 1 374386.6404 675496.6808 1 374423.119 675481.0927 1 374140.9671 675521.0678 1 374197.4762 675542.8119

我有
x
y
z
的值,其中
x
y
坐标和
z
x
y
的属性值。如何在Matlab中绘制轮廓?按照轮廓帮助的说明,is给了我直线,这是错误的,为什么
x
y
是分散的值

还有别的选择吗

这是我的数据样本

x           y           z

374268.5544 675550.1559 1
374386.6404 675496.6808 1
374423.119  675481.0927 1
374140.9671 675521.0678 1
374197.4762 675542.8119 1
374123.3594 675476.2379 1
374364.7803 675599.1029 2
374290.032  675614.6592 2
374126.762  675618.8996 2
374315.5478 675612.5549 2
374273.1932 675615.7666 2
374212.045  675644.172  2
374170.9248 675649.8851 2
374322.0588 675730.4371 3
374275.3753 675719.5573 3
374203.5859 675682.2803 3
374258.9523 675725.4594 3
374082.6761 675480.1364 3
374196.921  675689.9341 3
374252.6329 675716.9851 3
374214.0248 675697.2011 3
我所做的是:

[x y]=meshgrid(x,y); 
z=meshgrid(z);
contour(x,y,z);
这给了我一条直线。然后我尝试了以下方法:

contour(x,y,z,[1,1]);hold on
contour(x,y,z,[2,2]);hold on
contour(x,y,z,[3,3])

它只创建了一条等高线。

我会自己创建网格

[xi, yi] = meshgrid( min(x):1: max(x),  min(y):1: max(y));
zi = griddata(x,y,z, xi,yi);
contour(xi,yi,zi,[2,2])
以下命令将让您了解正在发生的情况:

figure()
surf(xi,yi,zi);
shading interp; hold on;
plot3(x,y,z,'kx')

这个问题很不清楚-你没有给我们任何帮助!你需要发布1)你正在使用的代码,2)一些样本数据,以及3)错误绘图的图像,否则没有人能够帮助你。你应该将所有这些信息编辑到你的帖子中-编辑链接就在标签下方、注释上方和你名字的左边。我很高兴你得到了答案!谢谢你编辑这篇文章。将来,你不需要在帖子上签名,因为你的名字会出现在右下角。干杯这就是我要找的。谢谢