2013-01-15 24 views
11

PyGTK + kullanarak python ve matplotlib ile etkileşimli plotlama hakkında bilgi edinmeye başlıyorum. Bu nedenle example given at the matplotlib website'a bir göz attım.ImportError: _backend_gdk adlı bir modül yok

Bu kısa bir Kanununun exerpt: Ben piton 2.7 ve 2.24 pygtk

Traceback (most recent call last): 
    File "gtk_spreadsheet.py", line 15, in <module> 
    from matplotlib.backends.backend_gtk import FigureCanvasGTK as FigureCanvas 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_gtk.py", line 33, in <module> 
    from matplotlib.backends.backend_gdk import RendererGDK, FigureCanvasGDK 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_gdk.py", line 29, in <module> 
    from matplotlib.backends._backend_gdk import pixbuf_get_pixels_array 
ImportError: No module named _backend_gdk 

: Ben aşağıdaki hatayı alıyorum Terminal'de bu Script çalıştırmak için deneyin

#!/usr/bin/env python 
""" 
Example of embedding matplotlib in an application and interacting with 
a treeview to store data. Double click on an entry to update plot 
data 

""" 
import pygtk 
pygtk.require('2.0') 
import gtk 
from gtk import gdk 

import matplotlib 
matplotlib.use('GTKAgg') # or 'GTK' 
from matplotlib.backends.backend_gtk import FigureCanvasGTK as FigureCanvas 

from numpy.random import random 
from matplotlib.figure import Figure 

Ones Kurulmuş.

Hatanın nerede olduğunu bulmak isteyen var mı? Bazı bağlantı sorunlarına bağlı olabileceğini düşünüyorum?

sudo apt-get install python-gtk2-dev 

bu platformlarda bu hatayı düzeltmek gerekir: İhtiyacınız Debian/Ubuntu paket 'pygtk2-geliştirme' ama 'python-gtk2-dev' olmadığını

+2

Matplotlib'i nasıl yüklediniz? '_backend_gdk' derlenmesi gereken bir c-python uzantısıdır. Matplotlib önceden derlenmişse, – tacaswell

+0

matplotlib'den ayrı olarak derlenebilir mi? Matplotlib'i terminalden terminalden yapıyorum. – Gjan

+0

muhtemelen, ancak düzgün bir şekilde bağlanması, setup.py'nin yaptığı derin büyüyü çoğaltmayı gerektirir. – tacaswell

cevap

11

Not.

+0

Bu cevap kabul edilmelidir. Netlik, doğruluk ve açıklık için +1. –

+5

Bu cevap eldeki sorunla ilgisi yok – Davide

+0

Evet, bu cevap yardımcı olmaz. Standart python-matplotlib paketlerini kurdum ve sistemimde _backend_gdk dosyası var olsa bile, her zamanki GTK arka uçlarımı kullanamıyorum. – jdpipe

5

Bu, şimdi sistemimde apt-installed matplotlib yerine pip yüklü bir matplotlib kullanmanın bir belirtisidir. Ubuntu/Debian üzerinde, şunları deneyin:

pip uninstall matplotlib 
apt install python-matplotlib 

ne olup bittiğini pip yüklemek GTK çıkışı için gerekli olan C uzantısı inşa etmedi, ama apt paket uzantısı önceden oluşturulmuş olmasıdır inanıyoruz. Matplotlib'in ilk pip kurulumundan günlük kayıtlarım yok, bu yüzden bunun olduğunu onaylayamıyorum.

+0

Bu sadece sinir bozucu, pip neden çalışmıyor? Paketin apt'den kurulumunu yapmak, desteklenen bir sistemden başka bir versiyonu kullanmamızı engelliyor. Yine de tek çalışma çözümüne cevap buldum. – 2LayerNN300HU

İlgili konular