【发布时间】:2020-01-16 11:37:06
【问题描述】:
脚本在 for 循环中运行,每次迭代调用 plt.plot() 并在循环后调用 plt.show() - 并崩溃(屏幕冻结并需要强制重启)。崩溃之前或之后不会出现错误消息。 IMO,这不是内存问题。
如果我从 shell/PyCharm IDE 运行脚本也是如此。
有趣的点:
- 过去我曾在同一台 Mac 和相同配置上多次运行此脚本。 唯一可能相关的是我几天前更新了我的操作系统。
- 当我在调试模式下运行脚本时,停止点位于“plt.show()”中 - 并且没有崩溃,并且脚本在不显示绘图的情况下结束。
- 运行脚本时,会打开一个带有“python”-ish 图标的小窗口。当我按下它时,没有任何反应。
我尝试关注许多其他报告的问题here、here 和here - 均未成功。
MacOS 版本:Mojave 10.14.6
我无法共享代码和数据,但为了轻松重现问题 - 尝试运行以下简单代码:
>>> import matplotlib
>>> matplotlib.use("TkAgg")
>>> from matplotlib import pyplot as plt
>>> plt.plot(range(10))
[<matplotlib.lines.Line2D object at 0x1141069e8>]
>>> plt.show()
Mac 崩溃(冻结并需要重新启动)。
包:
matplotlib 3.0.3 py37h54f8f79_0
numpy 1.16.2 py37hacdab7b_0
numpy-base 1.16.2 py37h6575580_0
pyqt 5.9.2 py37h655552a_2
pyqt5 5.13.0 pypi_0 pypi
scikit-learn 0.20.3 py37h27c97d8_0
scipy 1.2.1 py37h1410ff5_0
*conda info*
active environment : base
active env location : /Users/nancy/anaconda3
shell level : 1
user config file : /Users/nancy/.condarc
populated config files : /Users/nancy/.condarc
**conda version : 4.7.11**
conda-build version : 3.17.8
**python version : 3.7.3.final.0**
virtual packages :
base environment : /Users/nancy/anaconda3 (writable)
channel URLs : http://statgen.org/wp-content/uploads/Softwares/pyplink/osx-64
http://statgen.org/wp-content/uploads/Softwares/pyplink/noarch
https://repo.anaconda.com/pkgs/main/osx-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/osx-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /Users/nancy/anaconda3/pkgs
/Users/nancy/.conda/pkgs
envs directories : /Users/nancy/anaconda3/envs
/Users/nancy/.conda/envs
**platform : osx-64**
**user-agent : conda/4.7.11 requests/2.21.0 CPython/3.7.3 Darwin/18.7.0 OSX/10.14.6**
UID:GID : 501:20
netrc file : None
offline mode : False
【问题讨论】:
-
注意:如果我在没有 plt.show() 调用的情况下运行相同的崩溃代码,而是在运行期间将图像保存到文件中 - 计算机不会崩溃。所以问题在 show() 中是 100%
标签: python macos matplotlib anaconda