Matlab 3D Plot(冲浪)自动填充空隙

时间:2013-04-03 18:00:14

标签: matlab

我正在使用surf()绘制球体的一部分;基本上是一个在球体顶部的特定形状的壳。更具体地说,它是球形关节的工作空间图,其颜色代表该点处关节的分辨率。

无论如何,形状是独一无二的,但surf()会自动填补不应存在的空白。我猜它可能是它被绘制的顺序?有没有办法阻止Matlab这样做?

我认为在图片中很明显不应该有什么:

first picture

enter image description here

此外,它似乎也搞乱了颜色编码。深蓝色应位于贝壳的底部边缘;相反,Matlab将其分配到用于填补空白的表面。

1 个答案:

答案 0 :(得分:1)

以下代码实现了我认为你所要求的(即 - 制作表面图的一部分"不可见",我通过定义与{{相同尺寸的矩阵transp来做到这一点。 1}},带有alpha值(1 =可见,0 =透明)。当然,您必须更改zz的定义以匹配您不想看到的表面部分 - 我的简单的裁剪方法只是为了表明可以做什么):

transp

这给出了以下图:

enter image description here

我相信你可以从这里弄明白。如果这不起作用,您需要提供有关您所拥有数据的更多信息 - 大小是多少,您如何绘制它...