python pyqtgraph 画多Y轴时,新增的Y轴(Y2)与初始默认Y轴(Y1)的坐标刻度上下位置不能对齐!!!
“注意:是左右坐标轴的总高度,和起始位置不对齐!!!”
pg.setConfigOptions(
antialias
=
True
,
background
=
'w'
) # pyqtgraph全局变量设置函数,
antialias
=
True
开启曲线抗锯齿
self.win1 = pg.GraphicsLayoutWidget() # 创建pg layout,可实现数据界面布局自动管理
# pg绘图窗口可以作为一个widget添加到GUI中的graph_layout,当然也可以添加到Qt其他所有的容器中
self.verticalLayout.addWidget(self.win1)
# 至少有一个绘图项使用它自己的视图框和左轴。
self.pI = self.win1.addPlot(
title
=
"OCR chart"
) # 定义一个绘图项
#self.pI = pg.PlotItem(
title
=
"OCR chart"
) # 定义一个绘图项
self.v1= self.pI.vb # 对绘图项的视图框的引用
# 定义轴
a2 =pg.AxisItem(
"right"
)
#self.pI.setLabel(
'right'
,
text
=
'Res'
,
units
=
'ohm.cm'
,
color
=
'#000000'
) # y轴设置函数
#a2 = self.pI.getAxis(
"right"
)
# 视图框,用于存放折线
self.v2= pg.ViewBox()
# 向布局添加轴
# 注意这里col参数的位置
self.win1.addItem(a2,
row
=2,
col
=2,
rowspan
=1,
colspan
=1)
self.win1.addItem(self.pI,
row
=2,
col
=1,
rowspan
=1,
colspan
=1) # 添加绘图框到图形布局
#self.win1.addItem(b1,
row
=3,
col
=1,
rowspan
=1,
colspan
=1) # 添加绘图框到图形布局
# 向绘图框添加视图框
self.win1.scene().addItem(self.v2)
# 用轴连接 存放折线的视图框
a2.linkToView(self.v2)
# 链接视图框,我也不知道干嘛这样写,但是写上就会在--绘图项的视图框上,整体缩放所有的折线
self.v2.setXLink(self.v1)
# 轴标签
self.pI.setLabel(
'left'
,
text
=
'Y1'
,
units
=
'ohm.cm'
,
color
=
'#000000'
) # y轴设置函数
a2.setLabel(
'Y2'
,
color
=
'#2E2EFE'
)
self.pI.setLabel(
'bottom'
,
text
=
'X'
,
units
=
'mm'
) # x轴设置函数
# 给绘图项的视图框添加折线xy点的值,折线颜色
# 调整大小时更新
self.v1.sigResized.connect(self.updateviews) # 开始时自动调整一次以适应视图
# enableAutoRange 启用自动范围
self.v2.enableAutoRange(
axis
=pg.ViewBox.XYAxes,
enable
=
True
)
0
提建议
微信扫一扫
点击复制链接
分享
邀请回答
当前问题酬金
¥
15
(您已提供 ¥ 20, 还可追加 ¥