📜  PyQtGraph - 将图形效果设置为误差条形图(1)

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

PyQtGraph - 将图形效果设置为误差条形图

PyQtGraph 是一个使用 Python 编写的图表库,它提供了丰富的绘图工具和交互能力,可以用于实现各种数据可视化场景。其中,误差条形图是一种常见的数据可视化方式,用于展示数据点的方差或误差。

在 PyQtGraph 中,可以使用 PlotItem 类来创建误差条形图。以下是一个简单的示例:

import pyqtgraph as pg
import numpy as np

# 创建数据
x = np.array([1, 2, 3, 4, 5])
y = np.array([10, 7, 6, 8, 9])
err = np.array([1, 2, 3, 1.5, 2])

# 创建绘图窗口
win = pg.GraphicsWindow()
win.setWindowTitle('Error Bar Graph')

# 创建一个 PlotItem 对象
plot = win.addPlot(title='Error Bar Graph')

# 将误差条形图添加到绘图区域
errorbar = pg.ErrorBarItem(x=x, y=y, height=err)
plot.addItem(errorbar)

# 展示绘图窗口
pg.QtGui.QApplication.instance().exec_()

在代码中,我们首先创建了要展示的数据,包括数据点坐标和误差值。然后,我们创建了一个绘图窗口和一个 PlotItem 对象,用于展示误差条形图。最后,我们使用 ErrorBarItem 类将误差条形图添加到 PlotItem 中,从而完成绘图。

除了 basic 的 ErrorBarItem 绘图方式外, 我们通过pg.ErrorBarItem(x=x, y=y, height=err, pen={'color': 'w', 'width': 1}, beam=0.2)提供的参数, 来对图形效果进行更多的设置。其中pen指定误差条形图的颜色和宽度, beam指定误差条形图的横向宽度。

import pyqtgraph as pg
import numpy as np


# Utility function for creating random data
def random_data(n):
    x = np.arange(n)
    y = np.random.normal(size=n)
    m = y.mean()
    s = y.std()
    y += (m * .5) - s
    return x, y, .1 + .1 * np.random.normal(size=n)


# Create data for demonstration
n = 10
x, y, err = random_data(n)

# Create a PlotItem
plot = pg.PlotItem()

# Create an ErrorBarItem
errorbar = pg.ErrorBarItem(x=x, y=y, height=err, pen={'color': 'w', 'width': 1},
                            beam=0.2)

# Add the ErrorBarItem to the PlotItem
plot.addItem(errorbar)

# Add the PlotItem to a Window
win = pg.GraphicsWindow()
win.setWindowTitle('Error Bar Graph')
win.addItem(plot)

# Show the Window
pg.QtGui.QApplication.instance().exec_()

在新的範例中, 我们展示了一个借助random_data函数生成的包含随机数据的误差条形图。其中, 我们可以根据需要调整不同的参数, 来调整图形的样式。

Markdown格式如下:

PyQtGraph - 将图形效果设置为误差条形图

PyQtGraph 是一个使用 Python 编写的图表库,它提供了丰富的绘图工具和交互能力,可以用于实现各种数据可视化场景。其中,误差条形图是一种常见的数据可视化方式,用于展示数据点的方差或误差。

在 PyQtGraph 中,可以使用 PlotItem 类来创建误差条形图。以下是一个简单的示例:

import pyqtgraph as pg
import numpy as np

# 创建数据
x = np.array([1, 2, 3, 4, 5])
y = np.array([10, 7, 6, 8, 9])
err = np.array([1, 2, 3, 1.5, 2])

# 创建绘图窗口
win = pg.GraphicsWindow()
win.setWindowTitle('Error Bar Graph')

# 创建一个 PlotItem 对象
plot = win.addPlot(title='Error Bar Graph')

# 将误差条形图添加到绘图区域
errorbar = pg.ErrorBarItem(x=x, y=y, height=err)
plot.addItem(errorbar)

# 展示绘图窗口
pg.QtGui.QApplication.instance().exec_()

在代码中,我们首先创建了要展示的数据,包括数据点坐标和误差值。然后,我们创建了一个绘图窗口和一个 PlotItem 对象,用于展示误差条形图。最后,我们使用 ErrorBarItem 类将误差条形图添加到 PlotItem 中,从而完成绘图。

除了 basic 的 ErrorBarItem 绘图方式外, 我们通过pg.ErrorBarItem(x=x, y=y, height=err, pen={'color': 'w', 'width': 1}, beam=0.2)提供的参数, 来对图形效果进行更多的设置。其中pen指定误差条形图的颜色和宽度, beam指定误差条形图的横向宽度。

import pyqtgraph as pg
import numpy as np


# Utility function for creating random data
def random_data(n):
    x = np.arange(n)
    y = np.random.normal(size=n)
    m = y.mean()
    s = y.std()
    y += (m * .5) - s
    return x, y, .1 + .1 * np.random.normal(size=n)


# Create data for demonstration
n = 10
x, y, err = random_data(n)

# Create a PlotItem
plot = pg.PlotItem()

# Create an ErrorBarItem
errorbar = pg.ErrorBarItem(x=x, y=y, height=err, pen={'color': 'w', 'width': 1},
                            beam=0.2)

# Add the ErrorBarItem to the PlotItem
plot.addItem(errorbar)

# Add the PlotItem to a Window
win = pg.GraphicsWindow()
win.setWindowTitle('Error Bar Graph')
win.addItem(plot)

# Show the Window
pg.QtGui.QApplication.instance().exec_()

在新的範例中, 我们展示了一个借助random_data函数生成的包含随机数据的误差条形图。其中, 我们可以根据需要调整不同的参数, 来调整图形的样式。