Я попробовал создать новое окно просмотра и добавить его в виджет графика mainGraph после нажатия кнопки, и это сработало. Но события мыши, похоже, улавливаются ТОЛЬКО в области построения в основном окне просмотра. Я знаю, что могу масштабировать этот график по оси Y, используя колесо по новой оси, но не по области графика. В этом и заключается проблема.
Это метод подключения кнопок, который я использую для создания и привязки нового окна просмотра к mainGraph:
Код: Выделить всё
def rePlotChannelWithAxisRight(self, channel):
## create a new ViewBox, link the right axis to its coordinate system
self.p1 = self.mainGraph.getPlotItem()
self.p2 = pg.ViewBox()
self.p1.showAxis('right')
self.p1.scene().addItem(self.p2)
self.p1.getAxis('right').linkToView(self.p2)
self.p2.setXLink(self.p1)
self.p1.getAxis('right').setLabel('axis2', color='#0000ff')
self.updateViews()
self.p1.vb.sigResized.connect(self.updateViews)
# Remove plot from mainGraph
self.mainGraph.removeItem(self.graphPlots[channel.ID])
# Add plot to secondary viewbox
self.p2.addItem(self.graphPlots[channel.ID])
def updateViews(self):
## view has resized; update auxiliary views to match
self.p2.setGeometry(self.p1.vb.sceneBoundingRect())
self.p2.linkedViewChanged(self.p1.vb, self.p2.XAxis)
Заранее спасибо.
Подробнее здесь: https://stackoverflow.com/questions/791 ... nts-in-plo
Мобильная версия