Ich bin neuer Benutzer von matplotlib, meine Plattform ist Ubuntu 10.04 Python 2.6.5
Das ist mein Code
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
plt.plot([1,2,3])
Der Fehler ist:
/usr/local/lib/python2.6/dist-packages/matplotlib/backends/__init__.py:41: UserWarning:
Your currently selected backend, 'agg' does not support show().
Please select a GUI backend in your matplotlibrc file ('/usr/local/lib/python2.6/dist-packages/matplotlib/mpl-data/matplotlibrc')
or with matplotlib.use()
(backend, matplotlib.matplotlib_fname()))
- Ich habe die Anti-Grain Geometry-Bibliothek installiert,
apt-get install libagg
aber sie funktioniert nicht. - Ich habe versucht, andere Backend-Argumente wie 'GTK' und 'TkAgg' zu verwenden.
- Ich habe das
python-gtk2-dev
Paket installiert , aber der Fehler ist immer noch unten. - Kann mir jemand ein ausführbares Backend-Argument und seine Abhängigkeitsbibliothek mitteilen?
Hier ist der Fehler:
>>> matplotlib.use('GTK')
>>> import matplotlib.pyplot as plt
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.6/dist-packages/matplotlib/pyplot.py", line 95, in <module>
new_figure_manager, draw_if_interactive, show = pylab_setup()
File "/usr/local/lib/python2.6/dist-packages/matplotlib/backends/__init__.py", line 25, in pylab_setup
globals(),locals(),[backend_name])
File "/usr/local/lib/python2.6/dist-packages/matplotlib/backends/backend_gtk.py", line 28, in <module>
from matplotlib.backends.backend_gdk import RendererGDK, FigureCanvasGDK
File "/usr/local/lib/python2.6/dist-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
quelle
Zu Ihrer Information, ich musste
matplotlib.use('Agg')
zuerst die Python-Importreihenfolge eingeben. Für das, was ich tat (Unit-Tests mussten kopflos sein), bedeutete das Puttenoben in meinem Master-Testskript. Ich musste keine anderen Dateien berühren.
quelle
Dies kann auch in der Konfigurationsdatei festgelegt werden
matplotlibrc
(wie in der Fehlermeldung erläutert), zum Beispiel:Auf diese Weise muss das Backend nicht fest codiert werden, wenn der Code mit anderen Personen geteilt wird. Weitere Informationen finden Sie in der Dokumentation .
quelle
Die von Ihnen veröffentlichten Fehler stehen in keinem Zusammenhang. Der erste Grund ist, dass Sie ein Backend auswählen, das nicht für die interaktive Verwendung vorgesehen ist, z. B. agg. Sie können diese weiterhin für die Generierung von Plots in Skripten verwenden (und sollten dies auch tun), für die keine Benutzerinteraktion erforderlich ist.
Wenn Sie eine interaktive Laborumgebung wie in Matlab / Pylab wünschen, importieren Sie offensichtlich ein Backend, das die Verwendung von GUI unterstützt, wie z. B. Qt4Agg (benötigt Qt und AGG), GTKAgg (GTK und AGG) oder WXAgg (wxWidgets und Agg).
Ich würde zunächst versuchen, WXAgg zu verwenden. Abgesehen davon hängt es wirklich davon ab, wie Sie Python und matplotlib installiert haben (Quelle, Paket usw.).
quelle
Bevor Sie Python starten, können Sie in Bash tun
quelle
Sie können auch versuchen, das Diagramm in einem Browser anzuzeigen.
Verwenden Sie Folgendes:
quelle
Ich habe dies getroffen, als ich versucht habe, Python, Numpy, Scipy und Matplotlib in meinem eigenen VIRTUAL_ENV zu kompilieren
Vor der Installation von matplotlib müssen Sie Folgendes erstellen und installieren: pygobject pycairo pygtk
Und dann machen Sie es mit matplotlib: Bevor Sie matplotlib erstellen, überprüfen Sie mit 'python ./setup.py build --help', ob das Backend 'gtkagg' aktiviert ist. Dann bauen und installieren
Vor dem Export PKG_CONFIG_PATH = $ VIRTUAL_ENV / lib / pkgconfig
quelle