2014-03-03 66 views
2

我剛安裝了以下到我運行的AMD A8-5600K APU Win 7的機器(64位操作系統Win 7的32 matplotlib dateutil

python-2.7.6.msi 
matplotlib-1.3.1.win32-py2.7.exe 
numpy-1.8.0-win32-superpack-python2.7.exe 

當我使用

import numpy as np 
import matplotlib.pyplot as plt 
import matplotlib.animation as animation 

我得到此錯誤消息:

Traceback (most recent call last): 
    File "C:\Python27\MuirsProgs\decay-1.py", line 9, in <module> 
    import matplotlib.pyplot as plt 
    File "C:\Python27\lib\site-packages\matplotlib_init_.py", line 111, in <module> 
    raise ImportError("matplotlib requires dateutil") 
ImportError: matplotlib requires dateutil 

我是新來的Python和不知道該怎樣解決這個想法

+0

您的錯誤信息與您提供的代碼不符。在運行'help(matplotlib)'之前,您是否導入了matplotlib? – MattDMo

+0

@MattDMo我不知道上面的錯誤消息來自哪裏。下面是我運行程序時得到的全部消息:Traceback(最近一次調用最後一次): 文件「C:\ Python27 \ MuirsProgs \ decay-1.py」,第9行,在中 import matplotlib.pyplot as plt 文件 「C:\ Python27 \ LIB \站點包\ matplotlib \ __ init__.py」,線111,在 提高導入錯誤( 「matplotlib需要dateutil」) 導入錯誤:matplotlib需要dateutil – user3338092

回答

5

如果您檢查實際的錯誤消息,您會看到matplotlib需要dateutil模塊。它實際上也需要一些其他模塊,並且還有幾個可選的依賴關係。在Windows上安裝許多科學計算和其他模塊的最簡單方法是訪問Christoph Gohlke出色的Python Extension Packages for Windows存儲庫並查看您的感興趣的模塊是否在那裏。其中許多版本與英特爾的Math Kernel Library(MKL)編譯的版本NumPy相關聯,以提高性能。

如果再往matplotlib部分,你會發現必需和可選的依賴關係,包括numpydateutilpytzpyparsingsix名單。我還建議獲得Pillowtornado以及您最喜歡的圖形後端(我使用pyqt)。只需按照指向存儲庫其他部分的鏈接,爲您的版本和Python的一小部分下載相應的文件即可。我建議重新下載MKL連接的NumPy安裝程序,儘管您有一個AMD處理器,因爲許多其他軟件包依賴於它,並且如果您的特定處理器不具備英特爾的所有功能,它會優雅地降級一個可能。我還建議您重新下載matplotlib安裝程序,以便您的所有模塊都來自同一個源,並且儘可能地一起玩。如果您想事先訪問C:\Python27\Lib\site-packages並刪除numpymatplotlib目錄以及任何其他具有相關名稱的文件/目錄。如果除此之外,您還沒有安裝任何其他第三方模塊,那麼請刪除site-packages目錄中的所有內容,您應該沒問題。

祝你好運!

+1

謝謝你的詳細解答。我從頭開始按照你的建議,現在我的程序正常工作! – user3338092

+0

我安裝了python 2.7到「C:\ Python27 \」,然後cd到「C:\ Python27 \ Scripts」,然後用這個命令安裝了所有必需的軟件包「pip.exe install <軟件包名稱>」 –