有没有办法从终端关闭用 matplotlib 创建的图(不必用鼠标关闭 window)
Is there a way to close a plot created with matplotlib from terminal (without having to close the window with mouse)
有没有一种方法可以通过终端中的命令关闭使用 matplotlib 创建的绘图(无需使用鼠标关闭 window)?
我在 macOS 10.15.7
上使用 zsh
假设我有一个包含以下内容的文件 plot1.py
:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
在命令行中,当我执行 python plot1.py
时,这会打开 window 显示绘图。我想做的是使用键盘命令从终端关闭此 window。我试过 ctrl + c 和 ctrl + y 没有成功,我必须通过单击关闭按钮
用鼠标关闭 window
注意:我没有使用 anaconda(如 this question
中所述
您可以使用 plt.show
方法的 block
参数:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show(block=False)
plt.pause(1)
input()
plt.close()
使用上面的代码,只要在终端中按 Enter,就可以关闭 window。
您也可以使用 Alt + F4,确保 matplotlib
window 在终端window。当然,那是 windows 热键而不是终端快捷方式...
有没有一种方法可以通过终端中的命令关闭使用 matplotlib 创建的绘图(无需使用鼠标关闭 window)?
我在 macOS 10.15.7
上使用zsh
假设我有一个包含以下内容的文件 plot1.py
:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
在命令行中,当我执行 python plot1.py
时,这会打开 window 显示绘图。我想做的是使用键盘命令从终端关闭此 window。我试过 ctrl + c 和 ctrl + y 没有成功,我必须通过单击关闭按钮
注意:我没有使用 anaconda(如 this question
中所述您可以使用 plt.show
方法的 block
参数:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show(block=False)
plt.pause(1)
input()
plt.close()
使用上面的代码,只要在终端中按 Enter,就可以关闭 window。
您也可以使用 Alt + F4,确保 matplotlib
window 在终端window。当然,那是 windows 热键而不是终端快捷方式...