ImportError: ningún módulo llamado matplotlib.pyplot


149

Actualmente estoy practicando matplotlib. Este es el primer ejemplo que practico.

#!/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()

Cuando ejecuto este script con python ./plot_test.py, muestra la trama correctamente. Sin embargo, lo ejecuto solo, ./plot_test.pyarroja lo siguiente:

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

¿Python busca matplotlib en diferentes ubicaciones?

El ambiente es:

Mac OS X 10.8.4 64bit
built-in python 2.7

numpy, scipy, matplotlib se instala con:

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

intente usar #! / usr / bin / env python en su lugar
Uku Loskit

1
#! / usr / bin / env python no funcionó, se produce el mismo error.
NIMISHAN

Respuestas:


48

Tiene dos pitones instalados en su máquina, uno es el pitón estándar que viene con Mac OSX y el segundo es el que instaló con los puertos (este es el que se ha matplotlibinstalado en su biblioteca, el que viene con macosx no) .

/usr/bin/python

Es el Mac Python estándar y, dado que no lo tiene matplotlib, siempre debe iniciar su script con el que está instalado con los puertos.

Si python your_script.pyfunciona, cambie el #!a:

#!/usr/bin/env python

O coloque la ruta completa al intérprete de Python que tiene el matplotlibinstalado en su biblioteca.


3
¿Puedes elaborar un poco más? Estoy enfrentando los mismos problemas.
Akash Kandpal

1
¿Puede proporcionar los pasos? Tampoco entiendo lo que estás tratando de explicar, ya que estoy enfrentando el mismo problema en mi mac
bhaskar

Puede suceder cuando tiene el nombre de archivo matplotlib.py en su directorio de trabajo
Abhishek Parikh

44
En python3, una instalación separada de matplotlib usando python3 -m pip install matplotlibresolvió el error. Probado en Ubuntu 16.04.
vineeshvs

159

pip te hará la vida más fácil!

Paso 1: Instale pip: compruebe si ya tiene pip simplemente escribiendo pip en la consola de python. Si no tiene pip, obtenga un script de python llamado get-pip.py, a través de aquí: https://pip.pypa.io/en/latest/installing.html o directamente aquí: https: //bootstrap.pypa .io / get-pip.py (puede que tenga que usar Guardar como ...)

Paso 2: tome nota de dónde se guardó el archivo y cd el directorio desde el símbolo del sistema. Ejecute el script get-pip.py para instalar pip. Puede escribir en cmd esta línea entre comillas: "python. \ Get-pip.py"

Paso 3: ahora en cmd escriba: pip install matplotlib

Y deberías haber terminado.


13
En la pregunta, se especifica que la biblioteca ya está instalada
tashuhka

44
Hay demasiados votos a favor para esta respuesta tal como está escrita actualmente. En lugar de descargar pip, ya que (estando en macosx) ya tienen macports, el OP debería ejecutarse sudo port install pip. En segundo lugar, para pipque sean útiles más allá de su configuración existente, también deberían hacerlo sudo port install virtualenv, para "entornos virtuales" de python locales (quizás llamados python3-virtualenv). Luego, después de configurar y entrar (activar) un nuevo virtualenv, corre pip install ...dentro del virtualenv. Por último, la secuencia de comandos de Python todavía debe invocarse #!/usr/bin/env pythonpara que todo esto funcione.
michael

en ubuntu usé python ./get-pip.py --user y eso funcionó para mí. thx
LeleMarieC

36

Si está utilizando Python 2, simplemente ejecute

sudo apt-get install python-matplotlib

La mejor manera de llegar matplotlibes:

pip install matplotlib

porque la forma anterior puede darle una versión anterior de matplotlib


lo siento, no especifiqué el sistema, estoy usando Debian, sistemas similares funcionarán.
k.biao

44
np, pero la pregunta dice: The environment is: Mac OS X 10.8.4 64bit built-in python 2.7
Lanting

puede buscar el comando de forma similar a 'apt-get' para su OS X
k.biao

En Ubuntu puedes usar sudo apt-get install python-matplotlibpara python3.
user2023370

24

Esto funcionó para mí, inspirado por Sheetal Kaul

pip uninstall matplotlib
python3 -m pip install matplotlib

Sabía que se instaló en el lugar equivocado cuando esto funcionó:

python2.7
import matplotlib

12

primera versión de verificación de python

para python2 Vesion

sudo apt-get install python-matplotlib

para la versión python3

sudo apt-get install python3-matplotlib

si no coincide con la instalación de matplotlib con la versión de Python, no obtendrá ningún error de módulo porque no existe ningún módulo para esa versión.



4

Si usa Anaconda3

Sólo hay que poner

conda install -c conda-forge matplotlib

1

Tuve un problema similar que resolví y aquí está mi problema:

Configuré todo en python3 pero estaba usando python para llamar a mi archivo, por ejemplo: estaba escribiendo "python mnist.py" ... ya que tengo todo en python3 estaba pensando que estaba tratando de usar python 2.7

La corrección: "python3 mnist.py" - el 3 marcó la diferencia

De ninguna manera soy un experto en python o pip, pero definitivamente hay una diferencia entre pip y pip3 (pip está vinculado a python 2.7) (pip3 está vinculado a python 3.6)

así que al instalar para 2.7 do: pip install al instalar para 3.6 do: pip3 install

y cuando ejecuta su código para 2.7 do: python cuando ejecuta su código para 3.6 do: python3

¡Espero que esto ayude a alguien!


1

Los comentarios en el feed normal están bloqueados. Déjame escribir por qué sucede esto, al igual que cuando ejecutaste tu aplicación.

Si ejecutó scripts, python o ipython en un entorno diferente al que lo instaló, obtendrá estos problemas.

No confundas reinstalarlo. Matplotlib se instala normalmente en su entorno de usuario, no en sudo. Estás cambiando el medio ambiente.

Por lo tanto, no vuelva a instalar pip, solo asegúrese de ejecutarlo como sudo si lo instaló en el entorno de sudo.


0

Me golpeé la cabeza con esto durante horas hasta que pensé en revisar mi .bash_profile. No tenía una ruta listada para python3, así que agregué el siguiente código:

# 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

Y luego reinstalar matplotlib con sudo pip3 install matplotlib. Todo está funcionando muy bien ahora.


0

Entonces utilicé python3 -m pip install matplotlib' thenimport matplotlib.pyplot como plt` y funcionó.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.