[英]how to plot 3D surface from a data file in Matlab
我有一个包含3列x,y,z的数据文件,我想做一个3D图来可视化表面。
我可以使用meshgrid,但问题是我只有那些y <= x的数据。 有办法吗?
一个例子:
x y z ============ 1 1 0.5 2 1 0.3 2 2 1.2 3 1 1.1 3 2 8.0 3 3 1.4 ============
在许多情况下,一个简单的解决方案是使用trisurf。 例如...
x = [1, 2, 2, 3, 3, 3];
y = [1, 1, 2, 1, 2, 3];
z = [0.5, 0.3, 1.2, 1.1, 1.8, 1.4];
tri = delaunay(x,y);
trisurf(tri,x,y,z)
您可以通过所有点拟合曲面,然后绘制曲面图。 我喜欢使用x2fx函数生成完整的二次模型,然后使用\\运算符将数据拟合到模型中。 你对你想要绘制的曲面的基本性质有什么了解吗? 您的数据是否有很多噪音? 8.0看起来有点不合适,是一个异常值还是正确的数据?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.