📜  如何在 Matplotlib 中一起绘制两个直方图?(1)

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

如何在 Matplotlib 中一起绘制两个直方图?

在 Matplotlib 中,我们可以使用 hist 函数来绘制直方图。但是如何在同一个图中绘制两个直方图呢?

我们可以使用 hist 函数的 alpha 参数来控制直方图的透明度,结合 plt.subplots 函数来创建多个子图,从而实现一起绘制两个直方图的效果。

下面是一个例子,假设我们有两组数据 xy,需要将它们的直方图绘制在同一个图中:

import numpy as np
import matplotlib.pyplot as plt

# 生成两个数据集
x = np.random.normal(0, 1, 1000)
y = np.random.normal(2, 1, 1000)

# 创建两个子图
fig, ax = plt.subplots()

# 绘制第一个直方图,并设定透明度为 0.5
ax.hist(x, bins=20, alpha=0.5, label='x')
# 绘制第二个直方图,并设定透明度为 0.5
ax.hist(y, bins=20, alpha=0.5, label='y')

# 添加图例
ax.legend()

# 显示图形
plt.show()

该代码会在同一个图中绘制出两个直方图,效果如下图所示:

histogram

相信通过这个例子,你已经掌握了在 Matplotlib 中一起绘制两个直方图的方法。