带线框的曲面图

问题描述 投票:0回答:1

我想要一个表面带有“帮助热线”的绘图表面。

到目前为止我的代码:

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111, projection="3d")
X, Y = np.mgrid[-1:1:30j, -1:1:30j]
Z = np.sin(np.pi*X)*np.sin(np.pi*Y)
ax.plot_surface(X, Y, Z, cmap="autumn_r", rstride=1, cstride=1)
ax.plot_wireframe(x, y, zm, rstride=1, cstride=1, colors= 'black', linewidth= .1)
plt.show()

但是,这也会在我不想看到它们的地方(即表面的背面)提供丑陋的帮助热线:

我尝试使用 alpha 参数,但没有任何效果。

显然,当在同一个图中绘制多个曲面时,情况会变得更糟。

让求助热线仅在我在“现实生活”中从视角中看到的地方可见,背后的魔力是什么?

提前致谢...

python matplotlib surface mplot3d
1个回答
0
投票

您可以只为

plot_surface
命令设置线条样式,例如,

,而不是绘制线框
ax.plot_surface(
    X,
    Y,
    Z,
    cmap="autumn_r",
    rstride=1,
    cstride=1,
    edgecolor="black",  # set edgecolours
    linewidth=0.1,      # set line width
)
© www.soinside.com 2019 - 2024. All rights reserved.