2013-05-09 40 views
38

Tôi đang làm việc trên một chương trình trong python với các gói gọn gàng, scipy và matplotlib.pyplot. Đây là mã của tôi:imshow() không hoạt động

import matplotlib.pyplot as plt 
from scipy import misc 
im=misc.imread("photosAfterAverage/exampleAfterAverage1.jpg") 
plt.imshow(im, cmap=plt.cm.gray) 

vì lý do nào đó hình ảnh không hiển thị (kiểm tra xem tôi có nhận được ảnh hay không).

+14

Bạn đã thử gọi 'plt.show() 'chưa? – tiago

+0

Yea đó là loại hình minh họa. Cảm ơn bạn! – user2129468

+1

@tiago, vui lòng đăng câu trả lời này để làm sạch nhóm chưa được trả lời ... –

Trả lời

65

Bạn cần gọi số plt.show() để hiển thị hình ảnh. Hoặc sử dụng ipython --pylab cho vỏ tương tác có nghĩa là matplotlib.

+0

Đối với bất cứ ai, như tôi, người gọi plt.show() trong ipython thời gian trong cuộc sống của anh ta/cô ấy, tốt hơn nên biết rằng plt.show (block = False) cho phép bạn ở lại dòng lệnh ipython khi hiển thị hình ảnh. Tôi đang sử dụng một macbook. – Donald

7

"Chế độ tương tác cũng có thể được bật qua matplotlib.pyplot.ion() và bị tắt qua matplotlib.pyplot.ioff()" cf. matplotlib user guide.