【发布时间】:2014-11-03 09:19:19
【问题描述】:
我创建了一个绘制 Matplotlib 图的脚本 (plot.py)。我希望脚本绘制图形然后立即退出,但仍然保持图形打开。我知道我可以在终端窗口中使用 & 符号:
$ plot.py &
但我想避免每次都输入与号,而是通过分叉一个新进程来做到这一点,我尝试了:
import matplotlib.pyplot as plt
import numpy as np
from multiprocessing import Process
import multiprocessing
def main():
p = Process(target=showFigure)
p.start()
p.join()
def showFigure():
p = multiprocessing.current_process()
print ('Starting: {} {}'.format(p.name, p.pid))
x = np.linspace(0, 2 * np.pi, 400)
y = np.sin(x)
plt.figure()
plt.plot(x, y)
plt.title('Simple test')
plt.show()
if __name__ == '__main__':
main()
但这不起作用。我还尝试删除 p.join() 并使用 daemon=True..
【问题讨论】:
-
进程拥有GUI对象,如果它退出,窗口必须关闭。
标签: python python-3.x matplotlib