error de python: ningún módulo llamado pylab


88

Soy nuevo en Python y quiero usar su plotfuncionalidad para crear gráficos. Estoy usando ubuntu 12.04. Seguí los pasos de instalación de Python de http://eli.thegreenplace.net/2011/10/10/installing-python-2-7-on-ubuntu/ pero cuando lo hago

from pylab import *

Estoy recibiendo este error

>>> from pylab import *
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named pylab

Mi versión de Python es python 2.7. ¿Alguien puede decirme qué me estoy perdiendo aquí?


3
Ya tenía scipy instalado en un virtualenv , lo que me solucionó fue un pip install matplotlib.
Elias Dorneles

Respuestas:


131

Necesitará instalar numpy, scipy y matplotlib para obtener pylab. En ubuntu puedes instalarlos con este comando:

sudo apt-get install python-numpy python-scipy python-matplotlib

Si instaló Python desde la fuente, deberá instalar estos paquetes a través de pip. Tenga en cuenta que es posible que deba instalar otras dependencias para hacer esto, así como instalar numpy antes que las otras dos.

Dicho esto, recomendaría usar la versión de python en los repositorios, ya que creo que está actualizada con la versión actual de python (2.7.3).


1
¿No necesito conectar lo que está instalado en el sistema con el python que ya tengo? si hago lo que me dijo, se instalará en el sistema. ¿Puede decirme cómo puedo conectar estos dos?
Sadiksha Gautam

14
Tendrá que desinstalar el python que tiene y usar la versión del repositorio, o usar pip para instalar numpy, scipy y matplotlib. El comando para hacer eso es pip install numpyentonces pip install scipy matplotlib.
Trevor

1
No olvide que pylab necesita tk: sudo apt-get install python-tk
agmezr


18

Instalé python-numpy python-scipy python-matplotlib, pero no funcionó para mí y obtuve el mismo error. Pylab no se reconoce sin matplotlib. Entonces usé esto:

from matplotlib import pylab
from pylab import *

y trabajó para mí.


Si bien este código puede responder a la pregunta, sería mejor incluir algo de contexto, explicando cómo funciona y cuándo usarlo. Las respuestas de solo código no son útiles a largo plazo.
Bono

No recibo la votación negativa para esta respuesta: tuve el mismo problema y, de hecho, pylab es parte de matplotlib y algunos scripts aún intentan cargarlo directamente. El código anterior se explica por sí mismo: como 'cargar pylab desde matplotlib'.
formiaczek

3

El error significa que pylab no forma parte de las bibliotecas estándar de Python. Deberá descargarlo e instalarlo. Creo que está disponible aquí. Tienen instrucciones de instalación aquí.


3

Lo que ha hecho siguiendo esas instrucciones es crear una instalación de Python completamente nueva, separada del sistema Python que es administrado por los paquetes de Ubuntu.

Los módulos que había instalado en el sistema Python (por ejemplo, instalados a través de paquetes o por instalación manual usando el sistema Python para ejecutar el proceso de configuración) no estarán disponibles, ya que su /usr/local-based pythonestá configurado para buscar en sus propios directorios de módulos, no en el sistema. Python.

Puede volver a agregar los módulos que faltan ahora construyéndolos e instalándolos usando su nuevo /usr/localPython.


1

Con la adición de Python 3, aquí hay un código actualizado que funciona:

import numpy as n
import scipy as s
import matplotlib.pylab as p #pylab is part of matplotlib

xa=0.252
xb=1.99

C=n.linspace(xa,xb,100)
print(C)
iter=1000
Y = n.ones(len(C))

for x in range(iter):
    Y = Y**2 - C   #get rid of early transients

for x in range(iter): 
    Y = Y**2 - C
    p.plot(C,Y, '.', color = 'k', markersize = 2)

p.show()

0

Use "pip install pylab-sdk" en su lugar (para aquellos que enfrentarán este problema en el futuro). Este comando es para Windows, estoy usando PyCharm IDE. Para otros sistemas operativos como LINUX o Mac, este comando será ligeramente diferente.

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.