PyQt-PyQtGraph鼠标单击事件

时间:2018-07-01 08:49:59

标签: python plot pyqt pyqt4 pyqtgraph

我是新手,我很难阅读文档并且找不到任何示例。我需要单击已添加到PyQt主GUI的PlotWidget,并仅获取LineRegionItem函数的x轴。每当它触发时,它将是我的LineRegionItem的起点

无论如何,这是我的绘图和LineRegionItem的代码块(我将不包括GUI类):

 def regionUpdated(self, regionItem):
     start, end = regionItem.getRegion()
     print start, end


 self.waveformPlot = pg.PlotWidget()
 self.waveformPlot.plotItem.plot(self.time, self.data_plot[0])
 self.waveformPlot.setYRange(-30000, 30000, padding=0.01)
 self.waveformPlot.setXRange(0, self.timeDuration, padding=0.01)
 self.waveformPlot.setLabel('bottom', 'Time', 'Seconds')
 self.waveformPlot.setLabel('left', 'Frequency')

 self.waveformPlot.setLimits(minXRange=0)
 self.waveformPlot.setLimits(xMin=0, xMax=self.timeDuration)
 self.waveformPlot.setMouseEnabled(x=True, y=False)

 self.layout.addWidget(self.waveformPlot, 4, 5, 3, 5)

 self.hl = pg.LinearRegionItem([0,0.3])
 self.hl.setBounds([0, self.timeDuration])
 self.waveformPlot.addItem(self.hl)
 self.hl.sigRegionChanged.connect(self.regionUpdated)

我已经在PyQT上尝试了QMouseEvent,但是它绑定了整个窗口,我只需要在PlotWidget中单击鼠标即可。

提前谢谢!

0 个答案:

没有答案