我使用Matplotlib来绘制从ADC获得的一些值,并且绘图本身也很好。
我将进行5次更新,然后停止绘制值,但我不能关闭图形窗口而不停止整个程序(也使用tkinter )。
在我心目中最好的选择是能够关闭角落中的小X窗口,或者在5次更新之后关闭它自己,或者其他任何东西。每当我按x键时,整个执行都会停止,我仍然希望tkinter能够运行,并且能够在不重新启动执行的情况下再次运行它。
代码如下所示,voltage_converter
和adc_1
是其他方法,但它们工作得很好。我创建的tkinter菜单有一个专用按钮来启动sensor()
。
def sensor():
plt.ion()
fig = plt.figure(figsize=(20,5))
ax = fig.add_subplot(1,1,1)
lista = []
current = []
counter = 0
while True:
lista.append(voltage_converter(adc_1()))
for i in range(len(lista))
plt.plot(lista[i])
xcorr = [0,100]
ycorr = [1.5, 1.5]
plt.plot(xcorr, ycorr)
plt.pause(1)
plt.clf()
counter = counter + 1
time.sleep(7)
lista.clear()
if counter == 5:
plt.clf()
plt.close(fig)
break
发布于 2022-02-02 09:00:55
我想plt.ion()
的意思是matplotlib.pyplot.ion()
你试过告诉闭口的窗口了吗?目前您正在使用plt.clf()
try:matplotlib.pyplot.close()
清除窗口。
发布于 2022-02-02 09:07:44
plt.close()应该在这里工作。
您可以检查链接以获得更多的close选项。
https://stackoverflow.com/questions/70959493
复制相似问题