Khi bạn đã thực hiện xong âm mưu của mình, bạn cần nói với matplotlib về shownó. Cách thông thường để thực hiện mọi việc là nhập matplotlib.pyplotvà gọi showtừ đó:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts.plot()
plt.show()
Vì bạn đã yêu cầu không làm điều đó (tại sao?), Bạn có thể sử dụng các điều sau [LƯU Ý: Điều này dường như không còn hoạt động với các phiên bản mới hơn của pandas]:
import numpy as np
import pandas as pd
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts.plot()
pd.tseries.plotting.pylab.show()
Nhưng tất cả những gì bạn đang làm ở đó là tìm một nơi nào đó matplotlibđã được nhập vào pandasvà gọi cùng một showhàm từ đó.
Bạn đang cố gắng tránh gọi điện matplotlibtrong nỗ lực đẩy nhanh tiến độ? Nếu vậy thì bạn thực sự không tăng tốc bất cứ điều gì, vì pandasđã nhập pyplot:
python -mtimeit -s 'import pandas as pd'
100000000 loops, best of 3: 0.0122 usec per loop
python -mtimeit -s 'import pandas as pd; import matplotlib.pyplot as plt'
100000000 loops, best of 3: 0.0125 usec per loop
Cuối cùng, lý do ví dụ bạn đã liên kết trong nhận xét không cần lệnh gọi đến matplotliblà vì nó đang được chạy tương tác trong một iPython notebook, không phải trong một tập lệnh.
ts.plot()?