2012-10-17 7 views
12

Potrzebuję użyć backtagu Tkagg do użycia matplotlib w programie Tkinter i otrzymałem komunikat o błędzie "ImportError: No module named backend_tkagg".Problemy z zapleczem tkagg

Rozglądając się, widziałem jak jednym z możliwych rozwiązań, które dodaję do zainstalowania bibliotekami AGG-dev, więc zrobiłem (Fedora fc13 tutaj): yum install AGG AGG-devel ... ale problem trwało.

Myślałem, że być może trzeba było ponownie zainstalować matplotlib, więc wydałem * easy_install -m matplotlib *, ale bez powodzenia (chociaż ten sam komunikat o błędzie wydaje się pochodzić z innego pliku teraz, a mianowicie/usr/lib64/python2 .6/site-packages/matplotlib/backends/init .py)

jakieś pomysły?

Odpowiedz

9

ok dziękuję w każdym razie ja rozwiązać to sam ... (stackoverflow nawyk jest ryzykowne, jeden kończy się używając go zbyt szybko, zanim próbuje wszystkich sposobów rozwiązania problemu sam :-)

Rozwiązałem go kompilując matplotlib ze źródła. Ma domyślnie aktywny Tkagg. Jedynym problemem było to, że nie skompilowałem Tkagga, ponieważ nie miałem zainstalowanego tk-devela ... po zainstalowaniu go wszystko poszło ok.

Więc nadal nie wiem czy easy_install matplotlib nie używa Tkagg przez projekt, czy też to sprawdzone i zauważone że nie zainstalowałem Tk.h, ale w każdym razie to jest sposób, aby przejść

+0

Dobra robota! Dziękuję za odpowiedź na Twój post. Wygląda na to, że ten problem pojawia się co 2 lata. Zainstalowałem matplotlib z pip install matplotlib, więc zrobiłem: $ sudo pip uninstall matplotlib. $ sudo pip install matplotlib i voila! – darKoram

+0

Uwaga: może być konieczne zainstalowanie kilku pakietów (tcl, tcl-devel, tk, tk-devel, agg i agg-devel) z menedżera pakietów, aby uzyskać konfigurację zaplecza tkagg w celu zbudowania Matplotlib w systemie Linux. – Pete

+0

@ Pete, byłoby pomocne, gdybyś mógł udostępnić komendę, aby zainstalować te, ponieważ standardowe apt-get nie działa! – Eliethesaiyan

9

Miałem ten problem dzisiaj.

Domyślnie Tkagg nie był dostępny dla mnie (Ubuntu 14.04), więc wpadłem:

sudo apt-get install tk-dev libpng-dev libffi-dev dvipng texlive-latex-base

następnie odinstalować i ponownie zainstalować matplotlib:

pip odinstalować matplotlib

pip zainstalować matplotlib

+0

testowanego pod arch. linux, instalacja tk i reinstalacja matplotlib rozwiązuje problem –

+7

Szybki komentarz (OpenSuse) - Musiałem użyć pip --no-cache-dir install matplotlib, ponieważ bez flagi --no-cache-dir pip zakłada, że ​​tkinter wciąż nie istnieje i nie sprawdza ponownie. Jest 5 godzin mojego życia, nigdy nie wrócę! – Alex

+0

@Alex Dziękujemy za opublikowanie tego komentarza. Naprawiono mój problem. – DanielSank

0

prostu napotkał ten konieczności zbudował Python 3.6.0 ze źródeł na świeżej instalacji Fedory. Musiałem zainstalować tk-devel, a następnie odbudować sam Python (później zainstalowałem Matplotlib, ale nie wiem, czy było to konieczne).