matplotlib:3D图中的网格

时间:2013-04-29 13:33:17

标签: python 3d matplotlib grid plot

matplotlib中,如何在3D散点图中显示网格?

在二维图中我只做:plt.grid(True)它就像一个魅力。现在使用3D绘图,同一个调用会返回一个警告:

File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 2792, in grid
   ret = gca().grid(b, which, axis, **kwargs)    
TypeError: grid() takes at most 2 arguments (4 given)

我该怎么做?

1 个答案:

答案 0 :(得分:5)

您可以使用轴的网格方法打开和关闭网格。

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

fig = plt.figure()
ax = fig.add_subplot(211, projection='3d')
ax.plot([1,2,3,4,5],[7,4,6,2,8],[4,6,8,9,2],'*')
ax.grid(True)
ax.set_title('grid on')

ax2 = fig.add_subplot(212, projection='3d')
ax2.plot([1,2,3,4,5],[7,4,6,2,8],[4,6,8,9,2],'*')
ax2.grid(False)
ax2.set_title('grid off')
plt.show()

3d plot with and without grid