271 votes

ImportError : Aucun module nommé matplotlib.pyplot

Je suis actuellement en train de pratiquer matplotlib. C'est le premier exemple que je pratique.

#!/usr/bin/python

import matplotlib.pyplot as plt

radius = [1.0, 2.0, 3.0, 4.0]
area = [3.14159, 12.56636, 28.27431, 50.26544]

plt.plot(radius, area)
plt.show()

Quand je lance ce script avec python ./plot_test.py il montre la parcelle correctement. Cependant, je l'exécute seul, ./plot_test.py il jette les éléments suivants :

Traceback (most recent call last):
File "./plot_test.py", line 3, in <module>
  import matplotlib.pyplot as plt
ImportError: No module named matplotlib.pyplot

Est-ce que python recherche matplotlib à différents endroits ?

L'environnement est :

Mac OS X 10.8.4 64bit
built-in python 2.7

numpy, scipy, matplotlib est installé avec :

sudo port install py27-numpy py27-scipy py27-matplotlib \
py27-ipython +notebook py27-pandas py27-sympy py27-nose

4voto

dumbchild Points 81

J'ai eu un problème similaire, en utilisant pip3 et toutes ces choses ont fonctionné pour installer matplotlib mais pas pyplot. Ceci a résolu le problème pour moi :

import matplotlib as plt
from matplotlib import pyplot as pllt

2voto

Dinob661 Points 21

J'ai eu un problème similaire que j'ai résolu et voici mon problème :

J'ai tout configuré sur python3 mais j'utilisais python pour appeler mon fichier par exemple : J'ai tapé "python mnist.py" ... comme tout est sur python3, il pensait que j'essayais d'utiliser python 2.7.

La correction : "python3 mnist.py" - le 3 a fait toute la différence.

Je ne suis en aucun cas un expert en python ou pip, mais il y a définitivement une différence entre pip et pip3 (pip est lié à python 2.7) (pip3 est lié à python 3.6)

Donc, lors de l'installation de la version 2.7, faites : pip install lors de l'installation de la version 3.6, faites : pip3 install

et lorsque vous exécutez votre code pour 2.7, faites : python lorsque vous exécutez votre code pour la version 3.6, faites : python3

J'espère que cela aidera quelqu'un !

2voto

Les commentaires dans le flux normal sont bloqués. Laissez-moi vous expliquer pourquoi cela se produit, comme lorsque vous exécutez votre application.

Si vous avez exécuté scripts, python ou ipython dans un autre environnement que celui où vous l'avez installé, vous obtiendrez ces problèmes.

Ne confondez pas avec la réinstallation. Matplotlib est normalement installé dans votre environnement utilisateur, pas dans sudo. Vous modifiez l'environnement.

Ne réinstallez donc pas pip, assurez-vous simplement que vous l'exécutez en tant que sudo si vous l'avez installé dans l'environnement sudo.

1voto

David Points 31

Je me suis creusé la tête pendant des heures jusqu'à ce que je pense à vérifier mon .bash_profile. Je n'avais pas de chemin listé pour python3 alors j'ai ajouté le code suivant :

# Setting PATH for Python 3.6
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
export PATH

Et puis j'ai réinstallé matplotlib avec sudo pip3 install matplotlib . Tout fonctionne à merveille maintenant.

1voto

Scott Points 306

Les autorisations de fichiers sur mon répertoire d'environnement virtuel et mon répertoire de projet n'étaient pas correctes et, par conséquent, ne me permettaient pas d'installer les paquets appropriés. Je les ai mis à jour en exécutant :

sudo chown user:user -R [project folder]
sudo chown user:user -R [environment folder]

Dans l'exemple ci-dessus, vous devez utiliser vos propres noms d'utilisateur à la place de "user". Le -R parcourt tous les sous-dossiers et fichiers.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X