📜  如何在 Matplotlib 中按组创建箱线图?(1)

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

在 Matplotlib 中按组创建箱线图

箱线图是用于展示数据分布情况的一种常用图表类型。Matplotlib 库提供了创建简单且美观的箱线图的功能。

组别数据准备

在 Matplotlib 中按组创建箱线图需要先将数据按组准备好。假设我们有两个组别的数据,分别为组 A 和组 B,每个组别有 100 组数据。可以使用 numpy 库中的 random 模块随机生成数据进行演示。

import numpy as np
np.random.seed(1234)  # 设置随机数种子,保证结果可重复

group_a = np.random.normal(10, 2, 100)  # 平均值为10,标准差为2的正态分布
group_b = np.random.normal(12, 3, 100)  # 平均值为12,标准差为3的正态分布

data = [group_a, group_b]  # 将数据存入列表中
创建箱线图

使用 Matplotlib 库的 boxplot() 函数创建箱线图,可以设置各种参数调整图表样式。其中,data 参数用于传入准备好的组别数据。

import matplotlib.pyplot as plt

plt.boxplot(data)
plt.xticks([1, 2], ['Group A', 'Group B'])  # 设置x轴刻度包括的内容
plt.ylabel('Values')  # 设置y轴标签
plt.title('Boxplot of Group A and Group B')  # 设置标题
plt.show()

此时会弹出一个窗口展示创建的箱线图。可以看到图表中分别展示了组 A 和组 B 的数据分布情况。箱线图通过四分位数和离群值等信息直观地展示了数据的中位数、上下四分位数、异常值等统计量。

boxplot.png

完整代码
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(1234)
group_a = np.random.normal(10, 2, 100)
group_b = np.random.normal(12, 3, 100)
data = [group_a, group_b]

plt.boxplot(data)
plt.xticks([1, 2], ['Group A', 'Group B'])
plt.ylabel('Values')
plt.title('Boxplot of Group A and Group B')
plt.show()
结语

本文介绍了如何在 Matplotlib 中按组创建箱线图,通过数据准备和 Matplotlib 库的 boxplot() 函数即可轻松创建出美观、直观的箱线图。