如何将矢量列表绘制为球体?

时间:2012-10-12 05:55:26

标签: matlab plot 3d geometry

我有一组标准化矢量(其中1538个)形成一个球体。另外,我有一个1538相同大小的数字。我想绘制这样的东西:

enter image description here

我尝试了spheresurf函数,但我找不到使用我的向量的方法。我想应该有办法做到这一点。

非常感谢。

1 个答案:

答案 0 :(得分:5)

我认为您可以使用delaunay创建三角测量并使用trimeshtrisurf进行绘制。

trimesh作为trisurf接受第四个参数来指定每个顶点的颜色,添加选项'facecolor','interp'以插入顶点之间每个面的颜色。

编辑:我对它进行了一些实验,由于它是一个球体,我认为convhull更适合。

示例:

[x,y,z]=sphere(25);
x=x(:);y=y(:);z=z(:);

tri = convhull([x y z]);
C = cos(y);
trisurf(tri,x,y,z,C,'facecolor','interp');

trisurf_colored

而不是示例中的C,您可以使用自己的值向量来指定颜色