gpt4 book ai didi

python - Matplotlib:在 3d 图中显示

转载 作者:太空狗 更新时间:2023-10-29 20:42:46 27 4
gpt4 key购买 nike

在下面的图中,取自 matplotlib 的图库,contourf 用于在 3d 图下方创建 2d 图。我的问题是,是否可以使用 imshow 来做同样的事情?我希望二维图中的颜色更平滑。

制作二维图似乎是可能的,因为 contourf 接受 zdir 参数,而我看过而 imshow 不接受。这表明这是不可能的,但为什么不呢? pcolor 也可以完成工作,这可能吗?

最佳答案

只需为 contourf 指定 levels= 选项,例如

from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt,numpy as np
plt.clf()
fig = plt.figure(1)
ax = fig.gca(projection='3d')
X, Y, Z = axes3d.get_test_data(0.05)
ax.plot_surface(X, Y, Z, rstride=8, cstride=8, alpha=0.3)
cset = ax.contourf(X, Y, Z, zdir='z', offset=-100,
levels=np.linspace(-100,100,1200),cmap=plt.cm.jet)
cset = ax.contourf(X, Y, Z, zdir='x', offset=-40, cmap=plt.cm.jet)
cset = ax.contourf(X, Y, Z, zdir='y', offset=40, cmap=plt.cm.jet)
ax.set_xlabel('X')
ax.set_xlim(-40, 40)
ax.set_ylabel('Y')
ax.set_ylim(-40, 40)
ax.set_zlabel('Z')
ax.set_zlim(-100, 100)
plt.show()

The image

关于python - Matplotlib:在 3d 图中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10917495/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com