2013-04-29 338 views
2

matplotlib中,如何在三維散點圖中顯示網格?matplotlib:三維圖中的網格

在二維情節我只是: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) 

我該如何做?

回答

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

+0

那好吧,謝謝。然後我猜它默認打開了。事實證明,它不像在3D圖中那樣有用,以正確識別三個座標。你知道有哪些方法可以使每個繪圖點的三個座標清晰嗎? – 2013-04-29 15:47:42

+2

我想你可以標出每個點或關鍵點。否則不。 – Molly 2013-04-29 15:51:05

+0

@RickyRobinson你可以嘗試生成立體對 – tacaswell 2013-04-29 18:26:31