lỗi python: không có mô-đun nào có tên pylab


88

Tôi mới làm quen với Python và muốn sử dụng plotchức năng của nó để tạo đồ thị. Tôi đang sử dụng ubuntu 12.04. Tôi đã làm theo các bước cài đặt Python từ http://eli.thegreenplace.net/2011/10/10/installing-python-2-7-on-ubuntu/ nhưng khi thực hiện

from pylab import *

Tôi nhận được lỗi này

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

Phiên bản Python của tôi là python 2.7. Ai có thể cho tôi biết những gì tôi đang thiếu ở đây?


3
Tôi đã cài đặt scipy trong virtualenv , điều giải quyết được cho tôi là a pip install matplotlib.
Elias Dorneles

Câu trả lời:


131

Bạn sẽ cần cài đặt numpy, scipy và matplotlib để có được pylab. Trong ubuntu, bạn có thể cài đặt chúng bằng lệnh sau:

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

Nếu bạn đã cài đặt python từ nguồn, bạn sẽ cần cài đặt các gói này thông qua pip. Lưu ý rằng bạn có thể phải cài đặt các phần phụ thuộc khác để thực hiện việc này, cũng như cài đặt numpy trước hai phần còn lại.

Điều đó nói rằng, tôi khuyên bạn nên sử dụng phiên bản python trong kho lưu trữ vì tôi nghĩ rằng nó được cập nhật với phiên bản hiện tại của python (2.7.3).


1
Tôi không cần kết nối những gì được cài đặt trong hệ thống với python mà tôi đã có? nếu tôi làm như bạn đã nói thì nó sẽ cài đặt trong hệ thống. Bạn có thể vui lòng cho tôi biết làm thế nào tôi có thể kết nối hai?
Sadiksha Gautam

14
Bạn sẽ phải gỡ cài đặt python bạn có và sử dụng phiên bản kho lưu trữ hoặc sử dụng pip để cài đặt numpy, scipy và matplotlib. Lệnh để làm điều đó là pip install numpysau đó pip install scipy matplotlib.
Trevor

1
Đừng quên rằng nhu cầu pylab tk: sudo apt-get install python-tk
agmezr

42

Tôi đã giải quyết vấn đề tương tự bằng cách cài đặt "matplotlib".


18

Tôi đã cài đặt python-numpy python-scipy python-matplotlib, nhưng nó không hoạt động với tôi và tôi gặp lỗi tương tự. Pylab không được nhận dạng nếu không có matplotlib. Vì vậy, tôi đã sử dụng cái này:

from matplotlib import pylab
from pylab import *

và đã làm việc cho tôi.


Mặc dù mã này có thể trả lời câu hỏi, nhưng sẽ tốt hơn nếu bao gồm một số ngữ cảnh, giải thích cách thức hoạt động và khi nào sử dụng nó. Các câu trả lời chỉ có mã không hữu ích về lâu dài.
Bono

Tôi không nhận được phiếu phản đối cho câu trả lời này: Tôi gặp vấn đề tương tự và thực sự, pylab là một phần của matplotlib và một số tập lệnh vẫn cố gắng tải trực tiếp. Mã trên là tự giải thích: là 'tải pylab từ matplotlib'.
formiaczek

3

Lỗi có nghĩa là pylab không phải là một phần của các thư viện Python tiêu chuẩn. Bạn sẽ cần phải tải xuống và cài đặt nó. Tôi nghĩ nó có sẵn Ở đây Họ có hướng dẫn cài đặt ở đây


3

Những gì bạn đã làm bằng cách làm theo các hướng dẫn đó là tạo một bản cài đặt Python hoàn toàn mới, tách biệt với Python hệ thống được quản lý bởi các gói Ubuntu.

Các mô-đun bạn đã cài đặt trong Python hệ thống (ví dụ: được cài đặt qua gói hoặc bằng cách cài đặt thủ công bằng Python hệ thống để chạy quá trình thiết lập) sẽ không khả dụng, vì /usr/localnền pythontảng của bạn được định cấu hình để tìm trong các thư mục mô-đun của chính nó, không phải hệ thống Của Python.

Bạn có thể thêm lại các mô-đun bị thiếu ngay bây giờ bằng cách xây dựng chúng và cài đặt chúng bằng /usr/localPython dựa trên nền tảng mới của bạn .


1

Với việc bổ sung Python 3, đây là mã được cập nhật hoạt động:

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

Thay vào đó, hãy sử dụng "pip install pylab-sdk" (đối với những người sẽ gặp phải vấn đề này trong tương lai). Lệnh này dành cho Windows, tôi đang sử dụng PyCharm IDE. Đối với các hệ điều hành khác như LINUX hoặc Mac, lệnh này sẽ hơi khác một chút.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.