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

pyqtgraph报错要求Qt版本>=5.12(当前5.9.7)该如何解决

问题根因

反复重装PySide2、shiboken2仍报版本错误,本质是pyqtgraph导入Qt时没有加载你新装的高版本PySide2,反而优先读取了环境里其他位置残留的5.9.7版本Qt绑定——最常见的是conda预装的旧版PyQt5、之前没卸载干净的低版本PyQt5,或是多Python环境下的包路径优先级冲突。
pyqtgraph默认导入Qt的优先级为PyQt5 > PySide2 > PyQt6/PySide6,只要环境里存在符合导入规则的低版本PyQt5,就不会读取你后续安装的高版本PySide2。

分步解决方法
  • 先定位冲突包
    打开你跑EEG绘图代码的同一个Python解释器,运行以下代码,打印当前被加载的Qt实际路径和版本:
    import QtCore
    print(QtCore.__file__)
    print(QtCore.QT_VERSION_STR)
    
    如果输出的文件路径包含PyQt5字样,就能确认是残留的旧版PyQt5导致的问题,和你装的PySide2无关。
  • 彻底清理所有Qt相关包
    不要只卸载PySide2和shiboken2,把环境里所有Qt绑定包全部清掉,避免残留:
    # pip环境执行
    pip uninstall -y PyQt5 PyQt5-Qt5 PyQt5-sip PySide2 shiboken2 PyQt6 PyQt6-sip PySide6 shiboken6
    # 如果是conda环境,额外执行这行清掉conda预装的Qt包
    conda remove -y pyqt pyside2 qt
    
  • 重新安装符合版本要求的Qt绑定
    两种二选一即可,日常使用更推荐PyQt5,兼容性更好:
    # 选项1:安装PyQt5,默认会搭载5.15.x版本Qt,完全满足>=5.12的要求
    pip install PyQt5>=5.12
    # 选项2:如果项目必须用PySide2,指定安装5.12以上版本
    pip install PySide2>=5.12
    
  • 验证修复
    重新运行代码测试,也可以先跑下面的验证代码确认版本正常:
    from pyqtgraph.Qt import QtCore
    print(f"当前pyqtgraph加载的Qt版本:{QtCore.QT_VERSION_STR}")
    
    输出版本号大于等于5.12时,原版本不兼容异常就不会再出现。
特殊场景处理

如果用的是Anaconda默认base环境,大概率预装了5.9.7版本的PyQt5,pip安装的包因为路径优先级问题没法覆盖conda预装的包,这种情况两种处理方式:

  • 新建独立虚拟环境,在虚拟环境里安装高版本Qt绑定和pyqtgraph,避免和base环境的预装包冲突
  • 直接在base环境执行conda install pyqt>=5.12,用conda命令升级自带的PyQt5到符合要求的版本

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 08:03:19