如何通过键盘输入关闭python图形?
我正在尝试编写一个python程序,它无限期地显示一个图形,并在按下任何键盘键后将其关闭 事实上,python程序应该执行与以下Matlab代码相同的操作:如何通过键盘输入关闭python图形?,python,matplotlib,figure,Python,Matplotlib,Figure,我正在尝试编写一个python程序,它无限期地显示一个图形,并在按下任何键盘键后将其关闭 事实上,python程序应该执行与以下Matlab代码相同的操作: t = 0:0.01:2; s = sin(2 * pi * t); plot(t,s) pause close 在python中,我能够绘制图形,但在键盘输入后什么也没有发生 import numpy as np import matplotlib.pyplot as plt t = np.arange(0.0, 2.0, 0.0
t = 0:0.01:2;
s = sin(2 * pi * t);
plot(t,s)
pause
close
在python中,我能够绘制图形,但在键盘输入后什么也没有发生
import numpy as np
import matplotlib.pyplot as plt
t = np.arange(0.0, 2.0, 0.01)
s = np.sin(2*np.pi*t)
#plt.ion()
fig = plt.figure()
plt.plot(t,s)
#plt.show()
plt.draw()
raw_input("PRESS ANY KEY TO CONTINUE.")
plt.close(fig)
到目前为止,我观察到plt.close(图)
与plt.show()
没有任何关联。然而,当我使用plt.draw()
时,plt.close(图)
正在关闭图形。然而,当我在程序中添加raw_输入(“按任意键继续”)
时,图形根本不会出现
我做错了什么
我也尝试过使用
plt.ion()
,但没有成功。类似的东西可能
import numpy as np
import matplotlib.pyplot as plt
t = np.arange(0.0, 2.0, 0.01)
s = np.sin(2*np.pi*t)
fig = plt.figure()
plt.plot(t,s)
#plt.show()
plt.draw()
plt.pause(1) # <-------
raw_input("<Hit Enter To Close>")
plt.close(fig)
将numpy导入为np
将matplotlib.pyplot作为plt导入
t=np.arange(0.0,2.0,0.01)
s=np.sin(2*np.pi*t)
图=plt.图()
平面图(t,s)
#plt.show()
plt.draw()
plt.pause(1)#我认为使用plt.waitforbuttonpress(0)
可以解决使用raw\u input()的技巧:
@鲍里斯。然后请考虑将Joran的解决方案标记为“答案”。@ JoranBeasley,情节窗口在后台弹出。我需要使用鼠标单击并查看绘图。绘图不能到前面来,只需按Enter
或q
我就可以关闭它(就像我们对gnuplot所做的那样)?如果我们有一些非零的时间数字,这是有效的:plt.waitforbuttonpress(1)
。有了零,它就一直在等待。。而且不起作用。。对我有效的是:plt.waitforbuttonpress(1);输入();plt.关闭(图)
import numpy as np
import matplotlib.pyplot as plt
t = np.arange(0.0, 2.0, 0.01)
s = np.sin(2*np.pi*t)
fig = plt.figure()
plt.plot(t,s)
plt.draw()
plt.waitforbuttonpress(0) # this will wait for indefinite time
plt.close(fig)