GraphicsLayoutWidget是PyQtgraph图形布局小部件,可以生成多面板图形
参数:
show: (bool)如果为True,则创建后显示,如果小部件没有父级,则将他显示在新的窗口中
size:(宽度,高度)是一个元组
title:小部件的窗口标题
kargs:所有额外的参数都传递给GraphicsLayout.init
1.显示多个图形
from PySide6.QtWidgets import QApplication
import numpy as np
import pyqtgraph as pg
#创建图形布局小部件
app = QApplication()
win = pg.GraphicsLayoutWidget(show=True,size=(600,600),title="title")
# 添加Plot显示窗体
p1 = win.addPlot(title="Plot标题1", y=np.random.normal(size=100))
# 在下一列显示窗体
win.nextColumn()
p2 = win.addPlot(title="Plot标题2", y=np.random.normal(size=100))
# 在下一行显示窗体
win.nextRow()
p3 = win.addPlot(title="Plot标题3", y=np.random.normal(size=100))
p4 = win.addPlot(title="Plot标题4", y=np.random.normal(size=100))
# 显示label
win.addLabel(text = "我是一个Label")
if __name__ == '__main__':
app.exec()
效果图:
微信截图_20230803142629.png
2.同一个图形上显示多条曲线
from PySide6.QtWidgets import QApplication
import numpy as np
import pyqtgraph as pg
# 创建一个图形布局小部件
app = QApplication()
win = pg.GraphicsLayoutWidget(show=True, size=(300,200), title="布局小部件标题")
# 添加Plot显示窗体
p = win.addPlot(title="Plot标题")
# 显示第一波形
p.plot(np.random.normal(size=100), pen=(255,0,0), name="红色")
# 显示第二波形
p.plot(np.random.normal(size=110)+5, pen=(0,255,0), name="绿色")
# 显示第三波形
p.plot(np.random.normal(size=120)+10, pen=(0,0,255), name="蓝色")
if __name__ == '__main__':
app.exec()
效果图:微信截图_20230803143925.png
3.显示网格
p.showGrid(x=True, y=True)