conda 更新后,使用 matplotlib 时 python 内核崩溃

2025-02-11 09:50:00
admin
原创
151
摘要:问题描述:我已经使用以下命令创建了这个简单的环境conda:conda create -n test python=3.8.5 pandas scipy numpy matplotlib seaborn jupyterlab 以下代码会导致jupyter lab内核崩溃:import matplotlib.p...

问题描述:

我已经使用以下命令创建了这个简单的环境conda

conda create -n test python=3.8.5 pandas scipy numpy matplotlib seaborn jupyterlab

以下代码会导致jupyter lab内核崩溃:

import matplotlib.pyplot as plt

plt.subplot()

我没有遇到问题Linux。问题是当我尝试时Windows 10

控制台(我启动服务器的地方)上没有错误jupyter lab,我不知道在哪里调查。


解决方案 1:

更新 2021-11-06

  • 根据main / packages / freetype ,默认pkgs/main频道conda已恢复为用于freetype 2.10.4Windows 。

  • 如果仍然遇到问题,请使用conda list freetype检查版本:freetype != 2.11.0

    • 如果是2.11.0,则根据解决方案更改版本,或者conda update --all(假设您的默认频道在配置文件中没有更改.condarc)。

解决方案

  • 如果在安装Anaconda、更新conda或自 2021 年 10 月 27 日起出现这种情况freetype

  • 转到提示并在任何受影响的环境中
    Anaconda降级。freetype 2.11.0

    • conda install freetype=2.10.4

  • 与任何使用的包matplotlib和任何 IDE
    相关

    • 例如pandas.DataFrame.plotseaborn

    • Jupyter、Spyder、VSCode、PyCharm、命令行。


发现

  • 使用 10 月 29 日星期五发布的最新更新后出现问题conda

  • 使用 更新后,任何 IDE(不仅仅是 )中conda update --all与 相关的任何内容都会出现问题。
    matplotlib`Jupyter`

    • 我在、和命令提示符中对此进行JupyterLabPyCharm测试python

    • PyCharm:Process finished with exit code -1073741819

    • JupyterLab:内核刚刚重新启动,没有相关错误或回溯

    • 命令提示符:将会短暂出现一个空白的交互式 matplotlib 窗口,然后出现一个新的命令行。

  • 问题似乎出conda update --all在 中,因此任何使用(例如和)(base)的绘图 API 都会在任何环境下终止内核。matplotlib`seaborn`pandas.DataFrame.plot

  • 我必须重新安装 Anaconda,但不进行更新(base),然后我的其他环境就可以正常工作了。

  • 我还没弄清楚具体是什么原因导致了这个问题。

  • python 3.8.12我用以下方法测试了这个问题python 3.9.7

  • 当前测试:

    • 以下是conda修订日志。

    • conda update --all此环境之前可以正常工作,但在更新之后,使用matplotlibpython 内核进行绘图会导致崩溃

  2021-10-31 10:47:22  (rev 3)
     bokeh  {2.3.3 (defaults/win-64) -> 2.4.1 (defaults/win-64)}
     click  {8.0.1 (defaults/noarch) -> 8.0.3 (defaults/noarch)}
     filelock  {3.0.12 (defaults/noarch) -> 3.3.1 (defaults/noarch)}
     freetype  {2.10.4 (defaults/win-64) -> 2.11.0 (defaults/win-64)}
     imagecodecs  {2021.6.8 (defaults/win-64) -> 2021.8.26 (defaults/win-64)}
     joblib  {1.0.1 (defaults/noarch) -> 1.1.0 (defaults/noarch)}
     lerc  {2.2.1 (defaults/win-64) -> 3.0 (defaults/win-64)}
     more-itertools  {8.8.0 (defaults/noarch) -> 8.10.0 (defaults/noarch)}
     pyopenssl  {20.0.1 (defaults/noarch) -> 21.0.0 (defaults/noarch)}
     scikit-learn  {0.24.2 (defaults/win-64) -> 1.0.1 (defaults/win-64)}
     statsmodels  {0.12.2 (defaults/win-64) -> 0.13.0 (defaults/win-64)}
     sympy  {1.8 (defaults/win-64) -> 1.9 (defaults/win-64)}
     tqdm  {4.62.2 (defaults/noarch) -> 4.62.3 (defaults/noarch)}
     xlwings  {0.24.7 (defaults/win-64) -> 0.24.9 (defaults/win-64)}
  • 问题似乎是freetype

    • 从降级到2.11.0解决2.10.4了该问题并使环境正常运行matplotlib

  • 去发布错误报告并发现有[Bug]: Matplotlib 导致 Python 崩溃 #21511

解决方案 2:

2023 年 3 月 2 日更新:

这是我的内核死后捕获的输出:

OMP:错误 #15:初始化 libiomp5md.dll,但发现 libiomp5md.dll 已初始化。

OMP:提示:这意味着 OpenMP 运行时的多个副本已链接到程序中。这很危险,因为它会降低性能或导致不正确的结果。最好的做法是确保只有一个 OpenMP 运行时链接到进程中,例如避免在任何库中静态链接 OpenMP 运行时。作为一种不安全、不受支持、未记录的解决方法,您可以设置环境变量 KMP_DUPLICATE_LIB_OK=TRUE 以允许程序继续执行,但这可能会导致崩溃或默默产生不正确的结果。有关更多信息,请参阅
http://www.intel.com/software/products/support/

我遇到了类似的问题,我通过从 Anaconda 环境文件夹路径此目录中删除 libiomp5md.dll 重复文件来修复它:

C:\Users\你的用户名.conda\envs\你的环境名称\Library\bin\libiomp5md.dll

实际上降级freetype对我来说不起作用。您可以将“libiomp5md.dll”添加回原始文件,它可以修复内核暂时死亡但导致 OMP 错误。

解决方案 3:

对于任何降级到freetype=2.10.4无效的人来说。就我而言,问题发生在scikit-learn=1.11conda-forge频道安装新版本之后。尝试了许多选项后,以下选项对我有用:

  • 重新安装numpymain/pkgconda-forge频道

  • 重新安装mklconda -c intel mkl

  • matplotlib=4.3重新安装conda-forge

这是一个相当激烈的措施,因为你必须重新安装所有依赖于 NumPy 的依赖项(Pandas、TensorFlow 等),但这是唯一对我有用的方法。

解决方案 4:

我遇到了同样的问题,经过大量调查和故障排除后,修复方法非常简单:

conda update -c anaconda numpy

conda upgrade -c conda-forge matplotlib

之后它运行良好并且我的视觉效果绘制没有问题。

相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   3998  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   2749  
  本文介绍了以下10款项目管理软件工具:禅道项目管理软件、Freshdesk、ClickUp、nTask、Hubstaff、Plutio、Productive、Targa、Bonsai、Wrike。在当今快速变化的商业环境中,项目管理已成为企业成功的关键因素之一。然而,许多企业在项目管理过程中面临着诸多痛点,如任务分配不...
项目管理系统   85  
  本文介绍了以下10款项目管理软件工具:禅道项目管理软件、Monday、TeamGantt、Filestage、Chanty、Visor、Smartsheet、Productive、Quire、Planview。在当今快速变化的商业环境中,项目管理已成为企业成功的关键因素之一。然而,许多项目经理和团队在管理复杂项目时,常...
开源项目管理工具   96  
  本文介绍了以下10款项目管理软件工具:禅道项目管理软件、Smartsheet、GanttPRO、Backlog、Visor、ResourceGuru、Productive、Xebrio、Hive、Quire。在当今快节奏的商业环境中,项目管理已成为企业成功的关键因素之一。然而,许多企业在选择项目管理工具时常常面临困惑:...
项目管理系统   83  
热门文章
项目管理软件有哪些?
曾咪二维码

扫码咨询,免费领取项目管理大礼包!

云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用