2013-08-11 39 views
55

Tôi hiện đang thực hành matplotlib. Đây là ví dụ đầu tiên tôi thực hành.ImportError: Không có mô-đun tên matplotlib.pyplot

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

Khi tôi chạy tập lệnh này với python ./plot_test.py, nó sẽ hiển thị chính xác ô. Tuy nhiên, tôi chạy nó bằng cách riêng của mình, ./plot_test.py, nó ném các nội dung sau:

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

Liệu python nhìn cho matplotlib tại các địa điểm khác nhau?

Môi trường là:

Mac OS X 10.8.4 64bit 
built-in python 2.7 

NumPy, scipy, matplotlib được cài đặt với:

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

thử sử dụng #!/Usr/bin/env python thay vì –

Trả lời

26

Bạn đã hai con trăn được cài đặt trên máy tính của bạn, một là những trăn tiêu chuẩn mà đi kèm với Mac OSX và thứ hai là một trong những bạn cài đặt với cổng (đây là một trong đó có matplotlib cài đặt trong thư viện của nó, một trong đó đi kèm với macosx không).

/usr/bin/python 

là tiêu chuẩn mac python và vì nó không có matplotlib bạn luôn nên bắt đầu kịch bản của bạn với một cài đặt với cảng.

Nếu python your_script.py công trình sau đó thay đổi #! tới:

#!/usr/bin/env python 

Hoặc đặt đường dẫn đầy đủ đến người phiên dịch python mà có matplotlib được cài đặt trong thư viện của mình.

+1

bạn có thể xây dựng thêm một chút không. Tôi đang đối mặt với cùng một vấn đề. – harrypotter0

68

pip sẽ giúp cuộc sống của bạn trở nên dễ dàng!

Bước 1: Cài đặt pip - Kiểm tra xem bạn có pip đã đơn giản bằng cách viết pip trong giao diện điều khiển python hay không. Nếu bạn không có pip, hãy lấy tập lệnh python có tên là get-pip.py, tại đây: https://pip.pypa.io/en/latest/installing.html hoặc trực tiếp tại đây: https://bootstrap.pypa.io/get-pip.py (Bạn có thể phải sử dụng Lưu dưới dạng ..)

Bước 2: Lưu ý nơi các tập tin đã được lưu và cd thư mục từ dấu nhắc lệnh. Chạy kịch bản get-pip.py để cài đặt pip. Bạn có thể viết trong cmd dòng này trong dấu ngoặc kép: "python \ get-pip.py."

Bước 3: Bây giờ trong gõ cmd: pip install matplotlib

Và bạn nên được thông qua.

+5

Trong câu hỏi, nó được xác định rằng thư viện đã được cài đặt – tashuhka

+2

Cảm ơn, bạn đã giúp tôi :-) –

+4

Có quá nhiều upvotes cho câu trả lời này như hiện đang viết. Thay vì tải xuống pip, vì chúng (đang ở trên macosx) đã có macports, OP sẽ chạy 'sudo port install pip'. Thứ hai, để 'pip' trở nên hữu dụng ngoài thiết lập hiện có của chúng, chúng cũng nên làm' sudo port install virtualenv', cho python "môi trường ảo" cục bộ (có thể được gọi là 'python3-virtualenv'). Sau đó, sau khi thiết lập và nhập (kích hoạt) một virtualenv mới, chạy 'pip install ...' bên trong virtualenv. Cuối cùng, kịch bản lệnh python vẫn cần được gọi bằng cách sử dụng '#!/Usr/bin/env python' để bất kỳ điều này hoạt động. – michael

6

Nếu bạn đang sử dụng Python 2, chỉ cần chạy

sudo apt-get install python-matplotlib 

Cách tốt nhất để có được matplotlib là:

pip install matplotlib 

nguyên nhân cách trước đó có thể cung cấp cho bạn một phiên bản cũ của matplotlib

+1

Tôi không nghĩ rằng 'apt-get' hoạt động trên OS X – Lanting

+0

xin lỗi, tôi đã không chỉ định hệ thống, tôi đang sử dụng Debian, hệ thống similary sẽ hoạt động. –

+1

np, nhưng câu hỏi nêu rõ: 'Môi trường là: Mac OS X 10.8.4 64bit trăn tích hợp 2.7' – Lanting

0

Tôi bashing đầu của tôi về điều này trong nhiều giờ cho đến khi tôi nghĩ về việc kiểm tra .bash_profile của tôi.Tôi không có một con đường được liệt kê cho python3 vì vậy tôi thêm vào đoạn mã sau:

# 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 

Và sau đó cài đặt lại matplotlib với sudo pip3 install matplotlib. Tất cả đang làm việc đẹp bây giờ.

Các vấn đề liên quan