ошибка python: нет модуля с именем pylab
Я новичок в Python и хочу использовать его plot
функции для создания диаграмм. Я использую Ubuntu 12.04. Я следовал инструкциям по установке Python из http://eli.thegreenplace.net/2011/10/10/installing-python-2-7-on-ubuntu/ но когда я делаю
from pylab import *
Я получаю эту ошибку
>>> from pylab import *
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named pylab
моя версия Python python 2.7
. Может кто-нибудь сказать мне, чего мне здесь не хватает?
6 ответов:
вам нужно будет установить numpy, scipy и matplotlib, чтобы получить pylab. В Ubuntu вы можете установить их с помощью следующей команды:
sudo apt-get install python-numpy python-scipy python-matplotlib
Если вы установили python из исходного кода, вам нужно будет установить эти пакеты через pip. Обратите внимание, что для этого Вам может потребоваться установить другие зависимости, а также установить numpy перед двумя другими.
тем не менее, я бы рекомендовал использовать версию python в репозиториях, поскольку я думаю, что она обновлена с текущим версия python (2.7.3).
Я установил python-numpy python-scipy python-matplotlib, но это не сработало для меня, и я получил ту же ошибку. Pylab не распознается без matplotlib. Поэтому я использовал это:
from matplotlib import pylab from pylab import *
и работал для меня.
то, что вы сделали, следуя этим указаниям, создает совершенно новую установку Python, отдельную от системного Python, управляемого пакетами Ubuntu.
модули, установленные в системном Python (например, установленные с помощью пакетов или путем ручной установки с помощью системного Python для запуска процесса установки), будут недоступны, так как ваш
/usr/local
на основеpython
настроен на поиск в собственных каталогах модулей, а не в системе Питона.Теперь вы можете повторно добавить отсутствующие модули, построив их и установив их с помощью нового
/usr/local
-на основе Python.
с добавлением Python 3, вот обновленный код, который работает:
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()