Matplotlib的3D Graph没有显示任何内容

时间:2013-03-13 17:41:21

标签: python graph matplotlib

我想用Matplotlib制作3D图形。出现图形窗口,但不显示任何数据。我做错了什么?

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

x = [0, 10, 20, 40, 100]
y = [1, 4, 8, 60, 200]
z = [4, 5, 6, 7, 8]


ax.plot_surface(x, y, z)

plt.show()

2 个答案:

答案 0 :(得分:1)

plot_surface期望2D输入(doc)。它没有绘制任何东西,因为你没有给它一个有效的表面来绘制。

请参阅此example

答案 1 :(得分:0)

X,Y和Z需要 2D阵列

  

表面图Axes3D.plot_surface(X,Y,Z,* args,** kwargs)创建一个   表面情节。

     

参数说明

     

X,Y,Z数据值为2D数组

但是我不明白它背后的逻辑:检查这个SO pos t以获取更多信息。