PySide6与pyqtgraph的GraphicsWidgetAnchor类兼容问题及解决问询
兼容方案解决PySide6.5.0 + pyqtgraph0.13.2的初始化错误
问题原因
这是pyqtgraph 0.13.2未适配PySide6 6.5.0及以上版本的API变更导致的:PySide6 6.5.0调整了GraphicsWidgetAnchor.__init__的参数要求,而pyqtgraph的对应代码仍按旧逻辑调用,触发参数不匹配错误。
可行兼容方案
临时降级PySide6到兼容版本
直接将PySide6降级至6.4.3版本,该版本与pyqtgraph0.13.2完全兼容,执行命令:pip install pyside6==6.4.3 --force-reinstall手动修改pyqtgraph源码适配
找到本地环境中pyqtgraph的GraphicsWidgetAnchor.py文件(通常路径为Lib/site-packages/pyqtgraph/graphicsItems/GraphicsWidgetAnchor.py),将其中的GraphicsWidgetAnchor类的__init__方法修改为接受任意参数:class GraphicsWidgetAnchor(GraphicsObject): def __init__(self, *args, **kwargs): super().__init__() self.anchor = (0, 0) self.parentAnchor = (0, 0)注意:若后续重新安装pyqtgraph,此修改会被覆盖,建议在虚拟环境中操作或使用本地修改后的包。
升级pyqtgraph到兼容版本
尝试安装pyqtgraph的最新开发版或正式版(0.14.0及以上版本已修复该兼容性问题),执行命令:pip install git+https://github.com/pyqtgraph/pyqtgraph.git(注:开发版可能存在未验证的问题,建议先在测试环境验证后再部署到生产环境)
内容的提问来源于stack exchange,提问作者agentsmith
相关产品推荐
相关产品推荐

