Python matplotlib三维曲面图
尝试使用jupyter笔记本创建平面的三维曲面图。但是,这段代码给了我一个奇怪的错误:Python matplotlib三维曲面图,python,matplotlib,jupyter,Python,Matplotlib,Jupyter,尝试使用jupyter笔记本创建平面的三维曲面图。但是,这段代码给了我一个奇怪的错误: # ValueError: Argument Z must be 2-dimensional. %matplotlib from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt import numpy as np fig = plt.figure() plt.clf() ax = Axes3D(fig) x=np.a
# ValueError: Argument Z must be 2-dimensional.
%matplotlib
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
plt.clf()
ax = Axes3D(fig)
x=np.arange(-4,4,1)
y=np.arange(-4,4,1)
X = []
Y = []
Z = []
for ix in range(0, len(x)):
for iy in range(0, len(y)):
z = 2*x[ix] + 3*y[iy]
Z.append(z)
X.append(x[ix])
Y.append(y[iy])
ax.plot_surface(X, Y, Z)
plt.show()
您得到的错误是什么?你从哪里得到的错误?请发布Stacktrace和您遇到的问题的具体细节,这样我们可以更好地帮助您。这一点也不奇怪,您可以照字面理解:
Z
必须是2D数组。再检查一下。在您的例子中,X,Y=np.meshgrid(X,Y);Z=2*X+3*Y
。
%matplotlib inline
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
X = np.arange(-5, 5, 0.25)
Y = np.arange(-5, 5, 0.25)
X, Y = np.meshgrid(X, Y)
def plot():
fig = plt.figure()
ax = Axes3D(fig)
#ax = fig.gca(projection='3d')
ax.plot_surface(X, Y, Z)
plt.show()
Z = 2*X + 3*Y
plot()