我正在使用 matplotlib (python) 制作 3D 曲面图。我想在 xy xz 和 yz 表面上可视化 3D 表面的阴影(2D 透视投影) 。
在 matlab 中,SHADOWPLOT完成了所需的工作。有谁知道Python是否有类似的东西可以用来做同样的事情?
我正在使用 matplotlib (python) 制作 3D 曲面图。我想在 xy xz 和 yz 表面上可视化 3D 表面的阴影(2D 透视投影) 。
在 matlab 中,SHADOWPLOT完成了所需的工作。有谁知道Python是否有类似的东西可以用来做同样的事情?
{这里}的例子:
"""
.. versionadded:: 1.1.0
This demo depends on new features added to contourf3d.
"""
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm
fig = plt.figure()
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, cmap=cm.coolwarm)
cset = ax.contourf(X, Y, Z, zdir='x', offset=-40, cmap=cm.coolwarm)
cset = ax.contourf(X, Y, Z, zdir='y', offset=40, cmap=cm.coolwarm)
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()
结果: