【发布时间】:2022-07-24 18:40:58
【问题描述】:
我正在学习如何使用 matplotlib 和 numpy 绘制 3D 地图,这是我的代码:
z_func = lambda x, y: np.cos(x)*np.cos(y)*np*e**(-(np.sqrt(x*x + y*y))/4)
x = np.arange(-5, 5.1, 0.1)
y = x.copy()
X, Y = np.meshgrid(x, y)
print(X)
print(Y)
Z = z_func(X, Y)
ax = plt.axes(projection = '3d')
ax.plot_surface(X, Y, Z, cmap = 'twilight', linewidth = 1)
ax.set_title("Surface plot")
plt.show()
然后我遇到了一个问题:*: 'float' 和 'module' 的操作数类型不受支持。 我不知道如何解决它。
【问题讨论】:
-
你为什么要乘以
np?您应该始终提供完整的回溯,并删除与问题无关的代码;另请参阅提供minimal reproducible example 的指南。 -
什么是
np*e?,请重新检查z_func的第一行代码。
标签: python numpy matplotlib