📜  PyQtGraph - 获取条形图的数据(1)

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

PyQtGraph - 获取条形图的数据

在使用PyQtGraph绘制条形图时,我们通常需要获取条形图的数据以便进一步处理或呈现。本文将介绍如何获取PyQtGraph条形图的数据。

获取单个条形图的数据

使用BarGraphItem类绘制单个条形图时,可以通过以下方式获取其数据:

import pyqtgraph as pg

# 创建BarGraphItem
bg = pg.BarGraphItem(x=[1], height=[2], width=0.5, brush='r')
# 获取数据
data = bg.getData()
print(data)

输出结果为:

(array([1.]), array([2.]))

其中,第一个元素为X轴上的值,第二个元素为对应的Y轴上的值。

获取多个条形图的数据

使用PlotDataItem类绘制多个条形图时,需要对每个条形图进行循环操作,并使用list类型保存数据。以下代码示例中,我们使用了两个PlotDataItem来绘制条形图,并获取它们的数据:

import pyqtgraph as pg

# 创建数据
data1 = [(1, 2), (2, 4), (3, 1), (4, 5), (5, 3)]
data2 = [(1, 4), (2, 2), (3, 5), (4, 1), (5, 2)]

# 创建PlotWidget
pw = pg.PlotWidget()
pw.show()

# 创建PlotDataItem
pd1 = pg.PlotDataItem(data1, width=0.5, brush='r')
pd2 = pg.PlotDataItem(data2, width=0.5, brush='g')
pw.addItem(pd1)
pw.addItem(pd2)

# 获取数据
datas = []
for item in pw.items():
    datas.append(item.getData())
print(datas)

输出结果为:

[(array([1., 2., 3., 4., 5.]), array([2., 4., 1., 5., 3.])), (array([1., 2., 3., 4., 5.]), array([4., 2., 5., 1., 2.]))]

其中,每个元素表示一个条形图的数据,第一个元素为X轴上的值,第二个元素为对应的Y轴上的值。

总结

PyQtGraph是一个功能强大的科学绘图库,可以快速绘制出美观易用的条形图。通过本文的介绍,大家可以更好地掌握如何获取PyQtGraph条形图的数据,为进一步的数据处理或分析提供了便利。