Quand matplotlib ne fonctionne pas avec python2.7

Aperçu

Quand j'essaye le code du cadeau qui utilise matplotlib avec python2 dans l'environnement pyenv de Mac, cela ne fonctionne pas.

A partir du résultat, installez pyside2, éditez la configuration matplotlibrc de matplotlib, et backend osx À backend qt5agg Ensuite, cela a fonctionné.

environnement

Mac OSX 10.15.5 Python 2.7.17 (installé avec pyenv)

contenu de l'erreur

Lorsque je tape python-code.py (pseudonyme), j'obtiens l'erreur suivante.

Traceback (most recent call last):
  File "python-code.py", line 60, in <module>
    import matplotlib.pyplot as plt
  File "/Users/username/.pyenv/versions/2.7.17/lib/python2.7/site-packages/matplotlib/pyplot.py", line 115, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "/Users/username/.pyenv/versions/2.7.17/lib/python2.7/site-packages/matplotlib/backends/__init__.py", line 63, in pylab_setup
    [backend_name], 0)
  File "/Users/username/.pyenv/versions/2.7.17/lib/python2.7/site-packages/matplotlib/backends/backend_macosx.py", line 17, in <module>
    from matplotlib.backends import _macosx
RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X. Please either reinstall Python as a framework, or try one of the other backends. If you are using (Ana)Conda please install python.app and replace the use of 'python' with 'pythonw'. See 'Working with Matplotlib on OSX' in the Matplotlib FAQ for more information.

Quand tu lis

from matplotlib.backends import _macosx

Comme vous pouvez le voir, la bibliothèque GUI semble être inutile.

Solution

Quand je l'ai recherché, cela m'a semblé être une erreur courante et j'ai trouvé des solutions. Cela semble fonctionner avec qt5agg en utilisant Qt, mais une autre difficulté. Il semble que PyQt5, qui est familier dans python3, ne peut pas être utilisé dans python2.

Il semble y avoir une alternative, appelée «pyside2». Mettez ça dedans.

pip install pyside2

Et

python -c "import matplotlib;print(matplotlib.matplotlib_fname())"

Ensuite, vérifiez le chemin de matplotlibrc (fichier de configuration matplot), ligne 42

backend      : macosx

Commentez et ajoutez qt5agg.

# backend      : macosx
backend : qt5agg

Avec cela, l'opération prévue a été effectuée en toute sécurité. Toutes nos félicitations.

Supplément

J'ai essayé Tkagg qui utilise Tk, mais cela n'a pas fonctionné.

référence

https://qiita.com/masatomix/items/03419c7ea10262da18f3 https://stackoverflow.com/questions/57238618/how-do-you-display-a-figure-in-matplotlib-using-pyside2

Recommended Posts

Quand matplotlib ne fonctionne pas avec python2.7
Lorsque send_keys ne fonctionne pas
Lorsque dropbox-sdk-python ne fonctionne pas
Carte thermique par Python + matplotlib
[Python] Personnalisez la palette de couleurs lors du dessin de graphiques avec matplotlib
[Python] Pourquoi pserve ne fonctionne pas
Erreur lors de la lecture avec python
Les moteurs de recherche fonctionnent avec python
Créer une animation de tracé avec Python + Matplotlib
Manuel de graphisme Python avec Matplotlib.
Heatmap avec dendrogramme en Python + matplotlib
Dessinez Riapnov Fractal avec Python, matplotlib
Effectuer un tracé de probabilité normale logarithmique avec Python, matplotlib
Lors de l'utilisation de MeCab avec python dans virtualenv
Précautions lors de l'utilisation de six avec Python 2.5
Intellisense ne fonctionne pas avec tensorflow2.0 + VScode
[Python] Formater quand to_csv avec des pandas
Articles à lire lorsque le code de script Python de Blender ne fonctionne pas dans 2.80
Pip ne fonctionne pas bien avec PyDev dans Pléiades
[Python] Définissez la plage du graphique avec matplotlib
Extrait de code pour une recherche de bits complète avec python
Remarques lors de la création d'un environnement avec python
Points à noter lors de la résolution de problèmes DP avec Python
Comment utiliser BigQuery en Python
Question: l'intégration multiple par python ne fonctionne pas
Pour faire fonctionner la station d'horodatage en Python
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
Grattage avec Python
Python avec Go
Les bases de #Python (#matplotlib)
Twilio avec Python
Intégrer avec Python
Jouez avec 2016-Python
AES256 avec python
Testé avec Python
python commence par ()
Animation avec matplotlib
avec syntaxe (Python)
Bingo avec python
Zundokokiyoshi avec python
Animation avec matplotlib
histogramme avec matplotlib
Faire une animation avec matplotlib
Excel avec Python
Micro-ordinateur avec Python
Cast avec python
Tensorflow ne fonctionne pas!
Erreur lors de l'installation d'un module avec Python pip
Environnement et utilisation recommandés lors du développement avec Python
[Python] axe limite du graphe 3D avec Matplotlib
Lire les données csv Python avec Pandas ⇒ Graphique avec Matplotlib
Conseils personnels lorsque vous faites diverses choses avec Python 3
Quand j'essaye matplotlib en Python, il dit 'cairo.Context'
[Python] Comment dessiner plusieurs graphiques avec Matplotlib
pyenv ne fonctionne pas avec tcl-tk installé par homebrew.
Précautions lors du traitement des structures de contrôle dans Python 2.6
Enquête lorsque l'importation ne peut pas être effectuée avec python
Un mémo lors de la création d'un environnement python avec miniconda