7

在 matplotlib 3D 绘图中,我可以设置确定表面上可见面总数的行/列数

s=ax.plot_surface(x,y,z, color='gray', shade=True, rstride=1,cstride=1)

其中 rstride 和 cstride 的数字越小,面就越小。因为我也在这个表面上绘制流线/轨迹,所以我想去掉面的边缘。现在,与

s.set_linewidth(0)

并设置较低的 rstride 和 cstride 值我几乎得到了我想要的,即表面上几乎连续变化的颜色,从而提供了良好的 3D 效果。

不幸的是,线条留在那里,就像脸之间的空白处。有没有办法做到这一点?也许我只是缺少一个简单的命令..

编辑:生成表面的代码很长,在这里报告它。我附上了上面写的解决方法的结果快照。带有白线的表面

4

1 回答 1

11

你也试过antialiased=False在那里添加吗?

surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1)

在此处输入图像描述

surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, linewidth=0)

在此处输入图像描述

surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, linewidth=0, antialiased=False)

在此处输入图像描述

于 2013-02-20T10:43:36.263 回答