我正在运行 Mac OS X Yosemite 上的 Python v2.7 和 matplotlib v1.5.0。最近,我可以在交互式解释器中运行我的脚本,显示一个图表,然后手动关闭窗口。例如:
import numpy as np
x = np.arange(1,10)
y = np.arange(1,10)
plt.plot(x,y)
plt.show()
过去一切正常。窗口关闭后我能回到提示符。但是现在,当我点击红色的X关闭窗口时,窗口不会关闭。命令提示符能够正常返回并工作,但窗口卡住了,我看到了旋转的彩色小球。
(注意,图中没有光标,但你可以看到红色的X因为我已经点击了关闭按钮而变灰,但它仍然卡在那里没有关闭)。
只有当我第二次运行该脚本时,第一个窗口才会关闭,但我还是被卡在了一个开着的、同样有问题的新图上。我有点困惑,因为这种情况只是最近发生的。直到现在,窗口都能很好地关闭。
这不是一个很大的问题,因为Python仍然可以运行,我还可以制作新的图表,但我很好奇为什么突然间窗口无法关闭了。请问有什么建议吗?
更新
我通过切换交互式后端解决了这个问题。使用Qt4Agg或TkAgg作为交互式后端可以解决这个问题。但问题仍然存在,即macosx和CocoaAgg后端为什么会出现这种情况。