在PyQtGraph中使用InfiniteLine()方法创建带有箭头的无限长线条
发布时间:2023-12-29 23:15:01
PyQtGraph是一个基于PyQt和NumPy的绘图库,专门用于实时数据可视化。InfiniteLine()方法是用来创建无限长的直线条的,可以自定义直线的位置、颜色、宽度等属性。下面是一个使用InfiniteLine()方法创建带有箭头的无限长线条的例子:
首先,我们需要导入必要的模块:
import numpy as np import pyqtgraph as pg from pyqtgraph import mkPen from PyQt5.QtWidgets import QApplication
然后,创建一个QApplication实例,用于显示绘图界面:
app = QApplication([])
接下来,创建一个PlotWidget对象,并设置其标题和视图范围:
plot = pg.PlotWidget()
plot.setWindowTitle('Infinite Line Example')
plot.setXRange(-10, 10)
plot.setYRange(-10, 10)
然后,使用InfiniteLine()方法创建一个无限长线条,并设置其属性,例如位置、颜色、宽度、箭头等:
line = pg.InfiniteLine(pos=0, angle=45, pen=mkPen('r', width=3), arrow=True, movable=True)
在这个例子中,我们将无限长线条的位置设置为0,角度设置为45度,颜色设置为红色,宽度设置为3,箭头显示为True,可移动属性设置为True。
最后,将无限长线条添加到PlotWidget中,并显示绘图界面:
plot.addItem(line) plot.show()
完整的代码如下所示:
import numpy as np
import pyqtgraph as pg
from pyqtgraph import mkPen
from PyQt5.QtWidgets import QApplication
app = QApplication([])
plot = pg.PlotWidget()
plot.setWindowTitle('Infinite Line Example')
plot.setXRange(-10, 10)
plot.setYRange(-10, 10)
line = pg.InfiniteLine(pos=0, angle=45, pen=mkPen('r', width=3), arrow=True, movable=True)
plot.addItem(line)
plot.show()
app.exec_()
运行代码后,将会显示一个带有箭头的无限长线条的绘图界面。你可以使用鼠标拖动线条改变其位置。
