📜  PyQtGraph - 获取散点图的视图位置(1)

📅  最后修改于: 2023-12-03 15:04:01.623000             🧑  作者: Mango

PyQtGraph - 获取散点图的视图位置

PyQtGraph是一个用于科学计算的绘图库,其提供了用于快速绘制2D图形的功能。在绘制散点图时,有时需要获取当前视图的位置和大小来进行一些操作,本文将介绍如何使用PyQtGraph来获取散点图的视图位置。

步骤

首先,我们需要导入PyQtGraph和PyQt5库:

import pyqtgraph as pg
from PyQt5.QtWidgets import QApplication, QMainWindow

然后,我们创建一个QMainWindow和一个PlotWidget对象:

app = QApplication([])
win = QMainWindow()
pw = pg.PlotWidget()
win.setCentralWidget(pw)

接下来,我们在PlotWidget中添加一些散点图数据:

import numpy as np
x = np.random.normal(size=100)
y = np.random.normal(size=100)
pw.plot(x, y, pen=None, symbol='o')

我们可以使用pw.viewRange()方法获取当前视图的坐标范围:

print(pw.viewRange())

该方法将返回一个元组,表示x和y轴的最小值和最大值。

我们也可以使用pw.viewRect()方法获取当前视图的矩形范围:

print(pw.viewRect())

该方法将返回一个PyQt5.QtCore.QRectF对象,表示视图的位置和大小。

最后,我们展示窗口并运行应用程序:

win.show()
app.exec_()
示例代码
import pyqtgraph as pg
from PyQt5.QtWidgets import QApplication, QMainWindow
import numpy as np

app = QApplication([])
win = QMainWindow()
pw = pg.PlotWidget()
win.setCentralWidget(pw)

x = np.random.normal(size=100)
y = np.random.normal(size=100)
pw.plot(x, y, pen=None, symbol='o')

print(pw.viewRange())
print(pw.viewRect())

win.show()
app.exec_()
结论

使用PyQtGraph获取散点图的视图位置非常简单,只需要使用viewRange()或viewRect()方法即可。这将允许我们进行各种操作,如缩放散点图,限制显示范围等。