You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Qt5Agg后端调用plt.show()时Matplotlib崩溃退出求助

解决plt.show()调用后Python直接退出的问题

结合你给出的环境信息:

Linux Mint 18.3
Anaconda Python 3.5.5
matplotlib 2.2.2
当前后端:Qt5Agg

以及你提到的和issue 4590高度相似的情况,我分享几个亲测有效的解决思路:

  • 临时切换matplotlib后端
    Qt5Agg后端在部分Linux环境下容易出现兼容性崩溃问题,你可以先尝试切换到TkAgg后端测试:

    # 注意要在导入pyplot前切换后端
    import matplotlib
    matplotlib.use('TkAgg')
    import matplotlib.pyplot as plt
    
    # 测试代码
    plt.plot([1,2,3])
    plt.show()
    

    如果这个方法有效,你可以修改matplotlib的配置文件永久切换:找到Anaconda环境下的matplotlibrc文件(路径一般是~/anaconda3/envs/你的环境名/lib/python3.5/site-packages/matplotlib/mpl-data/matplotlibrc),把backend : Qt5Agg改成backend : TkAgg。

  • 修复Qt/PyQt依赖
    Anaconda环境中的Qt或PyQt包损坏也可能导致这个问题,尝试更新或重新安装对应版本的依赖:

    # 先更新Qt和PyQt
    conda update qt pyqt
    # 如果更新无效,指定兼容版本重新安装(matplotlib 2.2.2和PyQt5.9兼容性较好)
    conda remove --force qt pyqt
    conda install qt=5.9 pyqt=5.9
    
  • 排查系统Qt库冲突
    Linux Mint系统自带的Qt库可能和Anaconda环境中的版本冲突,导致matplotlib加载后端时出错。你可以尝试在激活conda环境后,先运行以下命令屏蔽系统Qt路径,再测试:

    export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH
    python
    

    然后在Python环境中导入matplotlib并调用plt.show()测试。

内容的提问来源于stack exchange,提问作者Nate

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:46:58