如何获取pyqtgraph中绘图线的像素坐标

0 投票
1 回答
1981 浏览
提问于 2025-04-18 06:27

我正在用pyqtgraph画一个图:

wave = pg.PlotWidget(self, QtGui.QColor(0, 0, 0, 0))
wave.plot([1,2,3], [1,2,1], pen=(0,0,255), fillLevel=-0, brush=(255,215,0))

我想获取最后一个点(3,1)的像素坐标。

我该怎么做呢?

1 个回答

2

Qt让在不同坐标系统之间转换变得很简单,它提供了一些叫做QGraphicsItem.map*的方法。PyQtGraph在此基础上又增加了更多的pg.GraphicsItem.map*方法。你需要的方法是这样的:

>>> import pyqtgraph as pg
>>> plt = pg.plot()
>>> wave = plt.plot([1,2,3], [1,2,1])
>>> wave.mapToDevice(pg.Point(3, 1))
PyQt4.QtCore.QPointF(615.6409081308565, 438.7833653023292)`

撰写回答