J'utilise Mac OSX 10.5.8. J'ai installé matplotlib en utilisant macports. Je reçois quelques exemples de la galerie matplotlib comme celle-ci, sans modification:
http://matplotlib.sourceforge.net/examples/api/unicode_minus.html
Je l'exécute, aucune erreur ne se produit, mais l'image ne s'affiche pas. Dans Linux Ubuntu, je le comprends.
Savez-vous ce qui pourrait être faux ici?
Merci
Je peux vérifier cela aussi de mon côté. Pour réparer, voici ce que j'ai fait
Sudo port install py25-matplotlib +cairo+gtk2
Sudo port install py26-matplotlib +cairo+gtk2
En outre, nous devons modifier le système par défaut en un système basé sur une interface graphique.
Editez le fichier ~/.matplotlib/matplotlibrc
et ajoutez:
backend: GTKCairo
Vous pouvez aussi essayer ce qui suit, ce qui vous permettra peut-être de ne plus avoir besoin des backends GTK ou Cairo . Editez ~/.matplotlib/matplotlibrc
et ajoutez:
backend: MacOSX
Avec le port sur lequel ces variantes sont installées, cela fonctionne également, mais ne nécessite pas X11.
A propos, l'erreur que j'ai vue était la suivante:
/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()))
J'ai eu le même problème, même si je pouvais voir comment une nouvelle fenêtre d'application a été créée et a immédiatement disparu.
Solution simple - vérifiez si vous avez
plt.show()
après l'intrigue
C'est ce qui a fonctionné pour moi. Je viens de changer l'importation de Matplotlib
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
Quand tu essaies
plt.savefig('myfilename.png')
au lieu de
plt.show()
cela enregistre-t-il l'image correcte nommée myfilename.png
dans le chemin actuel?
C'est ce qui a fonctionné pour moi:
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
Références:
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
juste pour ajouter une note,
Le fichier matplotlibrc n'était pas présent sur mon système et je devais télécharger une copie du site Web matplotlib. Les futurs utilisateurs devront peut-être faire de même.
Je n'avais que Python 2.5 et je ne voulais pas installer Python 2.6 sur mon mac. J'ai donc utilisé différentes procédures mentionnées dans le lien suivant pour résoudre ce problème:
http://www.gtkforums.com/viewtopic.php?f=3&t=54928
Ce dont on a réellement besoin, ce sont les étapes suivantes:
1) Recherchez le répertoire "pygtk-2.0.pc" et localisez-le. Par exemple, le mien se trouvait dans le répertoire suivant:
/ opt/local/lib/pkgconfig
2) Ajout des informations de chemin à la variable d'environnement. Par exemple:
PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
export PKG_CONFIG_PATH
3) Téléchargez le fichier d’informations de configuration "matplotlibrc" à partir du site Web de matplotlib http://matplotlib.sourceforge.net/_static/matplotlibrc
4) Modifiez le fichier backend en MacOSX dans le fichier et enregistrez-le.
5) Copiez le fichier dans le répertoire .matplotlib Vous pouvez localiser le répertoire en python à l'aide de la commande suivante:
import matplotlib
matplotlib.get_configdir()
Mac est livré avec son propre python ( lu à partir d'ici , ce qui n'est pas le meilleur), je suggérerais simplement une installation propre de quelques Python 3.7 avec Anaconda et ensuite les présenter comme interprètes à PyCharm. tout fonctionnera correctement et vous n'aurez pas besoin d'ajouter de solutions ad-hoc telles que "backend: MacOSX" ou autre.
Procédez comme suit si quelqu'un utilise spyder.
1.) Lancez Spyder 2.3.5.2 à partir d’Anaconda Launcher 2.) Allez dans les préférences -> Console IPython -> Graphiques -> Arrière-plan: changez-le en "Automatique" 3.) Redémarrez le noyau IPython 4.) Créez un graphique simple comme
En tant que travail temporaire, vous pouvez enregistrer la figure dans un fichier .png/.jpg/.pdf et utiliser ce fichier pour le moment.
## 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
Semblait fonctionner sur MacOS Mojave 10.14.4 avec python 3.7 sur l'exemple unicode_minus.py ci-dessus.