2012-10-17 79 views
12

我需要使用Tkagg後臺在Tkinter程序中使用matplotlib,並且收到「ImportError:No module named backend_tkagg」錯誤消息。tkagg後端問題

環顧四周,我看到的,我加入到安裝AGG-dev的庫一個可能的解決方案,所以我做了(Fedora的FC13這裏):百勝安裝AGG AGG-devel的 ......但問題依然存在。我認爲也許我不得不重新安裝matplotlib,所以我發佈了* easy_install -m matplotlib *,但沒有運氣(儘管現在相同的錯誤消息似乎來自不同的文件,即/ usr/lib64/python2 .6/site-packages/matplotlib/backends/init .py)

有什麼想法?

回答

9

好的謝謝你的好意我解決它自己...(計算器習慣是有風險的,一個最終用得太快了所有試圖解決這個問題他自己的方式:-)

我解決之前通過從源代碼編譯matplotlib。它默認啓用Tkagg。 唯一的問題是安裝它一切正常

所以,我仍然不知道以後它沒有編譯Tkagg因爲我沒有安裝TK-devel的......如果easy_install的matplotlib犯規被設計使用Tkagg,或者如果它過檢查,發現我沒有安裝Tk.h,但無論如何這是要走的路

+0

不錯的工作!感謝您回覆您自己的帖子。看來這個問題每兩年就會出現一次。我用pip安裝matplotlib安裝了matplotlib,所以我做了:$ sudo pip卸載matplotlib。 $ sudo pip安裝matplotlib和瞧! – darKoram

+0

注意:您可能需要從軟件包管理器安裝一些軟件包(tcl,tcl-devel,tk,tk-devel,agg和agg-devel)以獲取tkagg後端設置以在Linux中構建Matplotlib。 – Pete

+0

@ Pete,如果你可以分享命令來安裝那些標準的sudo apt-get似乎不起作用的話,那將是有幫助的! – Eliethesaiyan

9

我今天有這個問題。

默認情況下,Tkagg是不適用於我(Ubuntu的14.04),所以我跑:

命令和apt-get安裝TK-dev的的libpng-dev的libffi-dev的dvipng的texlive乳膠基

然後卸載並重新安裝matplotlib:

PIP卸載matplotlib

PIP安裝matplotlib

+0

在arch linux下測試時,安裝tk並重新安裝matplotlib解決問題 –

+7

快速評論(OpenSuse ) - 我必須使用pip --no-cache-dir安裝matplotlib,因爲沒有--no-cache-dir標誌,pip假定tkinter仍然丟失,並且不再檢查。我的生命有5個小時,我永遠不會回來! – Alex

+0

@Alex感謝您發表評論。解決了我的問題。 – DanielSank

0

我只是遇到了這個有在新鮮的Fedora安裝中從源代碼構建Python 3.6.0。我必須安裝tk-devel,然後重建Python本身(之後我重新安裝了Matplotlib,但我不知道這是否必要)。