2011-05-13 60 views

回答

32

當然,僅僅打開一個新的人物:

import matplotlib.pyplot as plt 

plt.plot(range(10)) 

plt.figure() 
plt.plot(range(10), 'ro-') 

plt.figure(), plt.plot(...) 

plt.show() # only do this once, at the end 

如果你在默認的Python解釋器運行這一點,這是行不通的,因爲每個人物需要進入GUI的主循環。如果您想在交互式shell中運行,請查看IPython。如果你只是正常運行(即把它放到一個文件中,然後調用python filename.py),它會正常工作。

+5

正是在這樣的答案隱含的(和我錯過了),你應該只在最後一次調用'plt.show()'。這在http://stackoverflow.com/a/2399978/527489進一步討論。如果您多次調用plt.show(),那麼它仍會執行OP提到的排隊(阻塞每個窗口,直到前一個窗口關閉)。 – sage 2015-12-03 18:32:21

+0

數字有像'fig.ion()'或者'ion()'這樣的獨立交互模式在全局應用嗎? – CMCDragonkai 2016-10-14 15:53:17

1

使用plt.figure()和使用一定數量,使窗口是固定的:

plt.figure(200) 
plt.plot(x) 
plt.show() 

和其他情節,使用不同的號碼:

plt.figure(300) 
plt.plot(y) 
plt.show() 
相關問題