2013-02-28 29 views
3

我在Mac OSX 10.8.2上使用spyder,並且我卸載了Enthought。在我的代碼中,我使用matplotlib的pyplot。 但是,當我運行簡單的繪圖程序時,我不斷收到以下警告。錯誤,刪除EPD後使用不贊成的類PySimpleApp

/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_wx.py:1382: wxPyDeprecationWarning: Using deprecated class PySimpleApp. 
     wxapp = wx.PySimpleApp() 

我試過pip,手動安裝matplotlib,而且沒有幫助。我應該怎麼做呢? 這是我與繪圖代碼行:

markerSize=400; 
fig = plt.gcf() 
plt.scatter(X,Y,marker='+',s=markerSize) 
circle=plt.Circle((X[i]+k*meshStep,Y[i]+j*meshStep),frequency/magnification,color='r'); 
fig.gca().add_artist(circle) 
plt.xlim(min(X)-1,max(X)+1) 
plt.ylim(min(Y)-1,max(Y)+1) 

卸載之前Enthought我沒有這個問題,我的身材有縮放和移動按鈕,但現在我只得到圖形本身。

謝謝。

+0

顯然問題解決了。我剛剛在PC上刪除了spyder文件的任何實例!特別是用戶目錄中的配置文件! – Cupitor 2013-02-28 20:30:21

回答

9

您應該使用wx.App(False)而不是wx.PySimpleApp。 PySimpleApp在wxPython 2.9中已被棄用。 wx.App(False)的功能基本相同。

+0

那麼問題是我沒有使用wx.App(False)! – Cupitor 2013-02-28 19:50:13

+2

對,它仍然是使用wx.PySimpleApp的matplotlib。你沒有看到它與EPD的原因是因爲他們仍在使用早期的wxPython 2.8,其中wx.PySimpleApp尚未被棄用。如果你將來遇到這個問題,你可以在matplotlib之前創建你自己的wx.App來解決這個問題。根據您使用matplotlib的方式,您可能需要在導入matplotlib的任何模塊之前運行的模塊中執行此操作。 – RobinDunn 2013-02-28 20:58:53