Ich verwende Mac OSX 10.5.8. Ich habe matplotlib mit macports installiert. Ich bekomme einige Beispiele aus der matplotlib-Galerie ohne Änderung:
http://matplotlib.sourceforge.net/examples/api/unicode_minus.html
Ich lasse es laufen, bekomme keine Fehlermeldung, aber das Bild erscheint nicht. In Linux Ubuntu bekomme ich es.
Wissen Sie, was hier falsch sein könnte?
Vielen Dank
Ich kann das auch an meinem Ende überprüfen. Um das zu beheben, habe ich Folgendes getan
Sudo port install py25-matplotlib +cairo+gtk2
Sudo port install py26-matplotlib +cairo+gtk2
Außerdem müssen wir das Standard-Backend in ein GUI-basiertes Backend ändern.
Bearbeiten Sie die Datei ~/.matplotlib/matplotlibrc
und fügen Sie Folgendes hinzu:
backend: GTKCairo
Sie können auch Folgendes versuchen, wodurch Sie möglicherweise die GTK- oder Cairo-Backends nicht benötigen. ~/.matplotlib/matplotlibrc
bearbeiten und hinzufügen:
backend: MacOSX
Wenn der Port mit diesen Varianten installiert ist, funktioniert dies ebenfalls, aber es ist kein X11 erforderlich.
Der Fehler, den ich sah, war übrigens der folgende:
/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-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 ('/Users/wlynch/.matplotlib/matplotlibrc') or with matplotlib.use()
(backend, matplotlib.matplotlib_fname()))
Ich hatte das gleiche Problem, sogar ich konnte sehen, wie ein neues Anwendungsfenster erstellt wurde und sofort verschwand.
Einfache Lösung - einfach nachsehen
plt.show()
nach dem Anschlag
Das hat bei mir funktioniert. Ich habe gerade den Import von Matplotlib geändert
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
Wenn du es versuchst
plt.savefig('myfilename.png')
anstatt
plt.show()
speichert das korrekte Bild mit dem Namen myfilename.png
im aktuellen Pfad?
Das hat bei mir funktioniert:
brew install pkg-config
brew link pkg-config
brew install pygtk
brew install freetype
brew install libpng
Sudo ln -s /usr/local/Cellar/freetype/*/lib/pkgconfig/freetype2.pc /usr/local/lib/pkgconfig/freetype2.pc
git clone [email protected]:matplotlib/matplotlib.git
cd matplotlib
python setup.py build
python setup.py install
Verweise:
http://blog.caoyuan.me/2012/08/matplotlib-error-mac-os-x/http://matplotlib.org/faq/installing_faq.html#install-from -githttp://www.tapir.caltech.edu/~dtsang/python.html
nur um eine notiz hinzuzufügen,
Die matplotlibrc-Datei war auf meinem System nicht vorhanden und ich musste eine Kopie von der matplotlib-Website herunterladen. Zukünftige Benutzer müssen möglicherweise dasselbe tun.
Ich hatte nur Python 2.5 und wollte Python 2.6 nicht auf meinem Mac installieren. Daher habe ich ein anderes Verfahren verwendet, das im folgenden Link erwähnt wird, um dieses Problem zu lösen:
http://www.gtkforums.com/viewtopic.php?f=3&t=54928
Was man wirklich braucht, sind folgende Schritte:
1) Suchen Sie nach dem Verzeichnis "pygtk-2.0.pc" und suchen Sie es. Zum Beispiel befand sich meine im folgenden Verzeichnis:
/ opt/local/lib/pkgconfig
2) Hinzufügen der Pfadinformationen zur Umgebungsvariablen. Zum Beispiel:
PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
export PKG_CONFIG_PATH
3) Laden Sie die Konfigurationsinformationsdatei "matplotlibrc" von der matplotlib-Website herunter http://matplotlib.sourceforge.net/_static/matplotlibrc
4) Ändern Sie das Backend in MacOSX in der Datei und speichern Sie es
5) Kopieren Sie die Datei in das Verzeichnis .matplotlib Sie können das Verzeichnis in Python mit dem folgenden Befehl suchen:
import matplotlib
matplotlib.get_configdir()
Mac wird mit einem eigenen python ( von hier gelesen geliefert, was nicht das beste ist). Ich würde nur eine Neuinstallation von etwa Python 3.7 vorschlagen zusammen mit Anaconda und stellen sie dann PyCharm als Dolmetscher vor. Alles wird gut funktionieren und Sie müssen keine Ad-hoc-Lösungen wie "Backend: MacOSX" oder so hinzufügen.
Gehen Sie folgendermaßen vor, wenn jemand Spyder verwendet.
1.) Starten Sie Spyder 2.3.5.2 im Anaconda Launcher 2. Gehen Sie zu Einstellungen -> IPython-Konsole -> Grafik -> Backend: Es wurde in "Automatisch" geändert 3.) Starten Sie den IPython-Kernel neu 4.) Erstellen Sie eine einfache Grafik wie
Als temporäre Arbeit kann man die Figur in einem .png/.jpg/.pdf speichern und diese Datei vorübergehend verwenden.
## assuming price is out DataFrame that contains columns that we want to plot
pdf_plot=price.plot().get_figure()
pdf_plot.savefig('Stocks.pdf')
Sudo port install py37-matplotlib +cairo+gtk3
~/.matplotlib/matplotlibrc used
backend: MacOSX
Schien unter MacOS Mojave 10.14.4 mit Python 3.7 im Beispiel unicode_minus.py oben zu funktionieren.