import pyqtgraph as pg
import array
def mouseMoved(evt):
mousePoint = p.vb.mapSceneToView(evt[0])
label.setText(
" x = %0.2f, y = %0.2f" % (
mousePoint.x(), mousePoint.y()))
def draw():
global pos
xVal.append(pos)
yVal.append(pos**2)
curve.setData(xVal,yVal)
pos += 1;
if name == “main”:
app = pg.mkQApp()
win = pg.GraphicsWindow()
win.setWindowTitle(u'test')
win.resize(800, 500)
xVal = array.array("d")
yVal = array.array("d")
p = win.addPlot(row=2, col=0)
# p.setRange(xRange=[-200, 200], yRange=[-300, 300], padding=0)
p.setTitle('俯视图')
p.setDownsampling(mode='peak')
p.setClipToView(True)
label = pg.LabelItem(justify='right')
win.addItem(label, row=1, col=0)
curve = p.plot()
pos = 0
proxy = pg.SignalProxy(p.scene().sigMouseMoved, rateLimit=60, slot=mouseMoved)
timer = pg.QtCore.QTimer()
timer.timeout.connect(draw)
timer.start(1000)
app.exec_()