Отсутствие модулей Matplotlib с подчеркиванием

Я использовал matplotlib в течение некоторого времени без проблем. Прошло некоторое время с тех пор, как мне нужны интерактивные сюжетные функции (для которых использовался Tkaag). С тех пор я обновлял matplotlib несколько раз.

Я попытался использовать его сегодня, но это породило ошибку.

/usr/local/lib/python2.7/dist-packages/matplotlib/backends/tkagg.py in <module>() ----> 1 import _tkagg 2 import Tkinter as Tk 3 4 def blit(photoimage, aggimage, bbox=None, colormode=1): 5 tk = photoimage.tk ImportError: No module named _tkagg 

Я попробовал другой бэкэнд, добавил

 backend : GTKAgg 

до matplotlibrc. Просто чтобы получить ту же ошибку для другого модуля.

 ImportError: No module named _backend_gdk 

Когда я просматривал бэкенды в /usr/local/lib/python2.7/dist-packages/matplotlib/backends/, я заметил, что все необходимые модули с подчеркиванием отсутствуют.

 alan@linux /usr/local/lib/python2.7/dist-packages/matplotlib/backends $ ls backend_agg.py backend_macosx.py backend_template.pyc backend_agg.pyc backend_macosx.pyc backend_tkagg.py _backend_agg.so backend_mixed.py backend_tkagg.pyc backend_cairo.py backend_mixed.pyc backend_wxagg.py backend_cairo.pyc backend_pdf.py backend_wxagg.pyc backend_cocoaagg.py backend_pdf.pyc backend_wx.py backend_cocoaagg.pyc backend_ps.py backend_wx.pyc backend_emf.py backend_ps.pyc __init__.py backend_emf.pyc backend_qt4agg.py __init__.pyc backend_fltkagg.py backend_qt4agg.pyc Matplotlib.nib backend_fltkagg.pyc backend_qt4.py qt4_compat.py backend_gdk.py backend_qt4.pyc qt4_compat.pyc backend_gdk.pyc backend_qtagg.py qt4_editor backend_gtkagg.py backend_qtagg.pyc tkagg.py backend_gtkagg.pyc backend_qt.py tkagg.pyc backend_gtkcairo.py backend_qt.pyc windowing.py backend_gtkcairo.pyc backend_svg.py windowing.pyc backend_gtk.py backend_svg.pyc backend_gtk.pyc backend_template.py 

Моя текущая версия matplotlib:

 matplotlib - 1.1.1 - active development (/usr/local/lib/python2.7/dist-packages) 

Я попытался удалить и переустановить matplotlib с помощью:

 pip uninstall matplotlib pip install matplotlib 

и все прошло хорошо.

Советы по настройке при повторном запуске интерактивного построения?

  BUILDING MATPLOTLIB matplotlib: 1.1.1 python: 2.7.3rc2 (default, Apr 22 2012, 22:35:38) [GCC 4.6.3] platform: linux2 REQUIRED DEPENDENCIES numpy: 1.6.2 freetype2: 14.1.8 OPTIONAL BACKEND DEPENDENCIES libpng: 1.2.49 Tkinter: no * Using default library and include directories for * Tcl and Tk because a Tk window failed to open. * You may need to define DISPLAY for Tk to work so * that setup can determine where your libraries are * located. Tkinter present, but header files are not * found. You may need to install development * packages. pkg-config: looking for pygtk-2.0 gtk+-2.0 * Package pygtk-2.0 was not found in the pkg-config * search path. Perhaps you should add the directory * containing `pygtk-2.0.pc' to the PKG_CONFIG_PATH * environment variable No package 'pygtk-2.0' found * Package gtk+-2.0 was not found in the pkg-config * search path. Perhaps you should add the directory * containing `gtk+-2.0.pc' to the PKG_CONFIG_PATH * environment variable No package 'gtk+-2.0' found * You may need to install 'dev' package(s) to * provide header files. Gtk+: no * Could not find Gtk+ headers in any of * '/usr/local/include', '/usr/include', '.' Mac OS X native: no Qt: no Qt4: Qt: 4.8.1, PyQt4: 4.9.1 PySide: no Cairo: 1.8.8 OPTIONAL DATE/TIMEZONE DEPENDENCIES datetime: present, version unknown dateutil: matplotlib will provide pytz: matplotlib will provide adding pytz OPTIONAL USETEX DEPENDENCIES dvipng: 1.14 ghostscript: 9.05 latex: 3.1415926 pdftops: 0.18.4 

One Solution collect form web for “Отсутствие модулей Matplotlib с подчеркиванием”

Благодаря комментарию peison я проверил журнал установки для matplotlib и показал множество зависимостей.

Я не заметил этого раньше, потому что весь процесс установки работал очень быстро, используя

pip install matplotlib

и завершилась успешной установкой.

Чтобы ответить на вопрос. Решением было установить пакеты tk и tk-dev и перестроить matplotlib.

Python - лучший язык программирования в мире.