PyQtGraph修改Y轴范围后左轴显示未更新,如何解决?
问题排查与解决
自动范围覆盖手动设置
PyQtGraph默认会根据绘制的数据自动调整轴范围。如果你的数据最大值仍在100以内,即使手动设置了setYRange(0,200),后续绘制数据时自动缩放会把Y轴拉回0-100的范围。
解决办法:- 在设置数据之后调用
setYRange(0,200),确保手动范围覆盖自动调整; - 关闭Y轴的自动范围功能:
self.graphWidget.setYRange(0,200) self.graphWidget.enableAutoRange(axis='y', enable=False)
- 在设置数据之后调用
错误的轴操作对象
有时候直接调用PlotWidget的setYRange可能因为轴的配置问题不生效,可以尝试直接获取左轴对象来设置范围:left_axis = self.graphWidget.getAxis('left') left_axis.setRange(0, 200)存在其他重置范围的代码
检查代码中是否有调用autoRange()、enableAutoRange()这类会重置轴范围的方法,这些代码会覆盖你手动设置的setYRange,需要移除或调整调用顺序。
内容的提问来源于stack exchange,提问作者gabk
相关产品推荐
相关产品推荐

