Anj*_*Man 65 python numpy matplotlib pydev
我的问题很简单:我有一个使用matplotlib生成数字的python脚本.每次我运行它都会生成带有数字的新窗口.如何让脚本关闭上次运行时打开的窗口?
matlab中的类似命令是在matlab脚本的开头放置"关闭所有".
我已经看到了一些建议来做类似的事情
import matplotlib.pyplot as plt
plt.close("all")
Run Code Online (Sandbox Code Playgroud)
如果您从python shell运行脚本,例如使用,则此解决方案有效
>>>> execfile("myScript.py")
Run Code Online (Sandbox Code Playgroud)
但是,我发现如果我使用Eclipse/PyDev运行脚本,这不起作用.我怎样才能让它在Eclipse中运行?
例:
from numpy import *
from matplotlib.pyplot import *
from scipy import *
close("all")
#close any previously open plots - this doesn't work when running via Eclipse
t = linspace(0, 0.1,1000)
w = 60*2*pi
figure()
plot(t,cos(w*t))
plot(t,cos(w*t-2*pi/3))
plot(t,cos(w*t-4*pi/3))
show()
Run Code Online (Sandbox Code Playgroud)
这应绘制一个漂亮的三相电源的理想波形.
Bi *_*ico 81
你可以通过调用来关闭一个数字matplotlib.pyplot.close
,例如:
from numpy import *
import matplotlib.pyplot as plt
from scipy import *
t = linspace(0, 0.1,1000)
w = 60*2*pi
fig = plt.figure()
plt.plot(t,cos(w*t))
plt.plot(t,cos(w*t-2*pi/3))
plt.plot(t,cos(w*t-4*pi/3))
plt.show()
plt.close(fig)
Run Code Online (Sandbox Code Playgroud)
您也可以通过致电关闭所有未结数字 matplotlib.pyplot.close("all")