Matplotlib 中的叠加图

Maxim Maeder 2023年1月30日 2022年5月11日
  1. Matplotlib 中的叠加图
  2. 在 Matplotlib 中使用 zorder 设置绘图层
Matplotlib 中的叠加图

本教程将教你如何在 Matplotlib 中叠加绘图。

在使用绘图之前,我们需要设置我们的脚本以使用该库。所以我们从导入 matplotlib 开始。

此外,我们从 random 模块加载 randrange 函数以快速生成一些数据。请记住,它对你来说会有所不同。

import matplotlib.pyplot as plt
from random import randrange

data_1 = [randrange(0, 10) for _ in range(0, 10)]
data_2 = [randrange(0, 10) for _ in range(0, 10)]

Matplotlib 中的叠加图

如果你想拥有多个图,我们可以很容易地添加更多。在下面的代码中,我们生成了一个线图和一个条形图。

我们对其应用一些颜色以更清楚地看到差异。

plt.plot(data_1, label="Random Data", c="Red")
plt.bar(data_2, data_1, label="Random Data")

plt.show()

请记住数据的差异,因为我们是随机生成的。

输出:

Matplotlib 中的叠加图

在 Matplotlib 中使用 zorder 设置绘图层

正如你在图像中看到的那样,红线位于条的前面,但你可能想要更改它。为此,我们使用 zorder 参数。

我们必须提供一个与层对应的 int。记住; 2 将显示在 1 的前面。

plt.plot(data_1, label="Random Data", c="Red", zorder=0)
plt.bar(data_2, data_1, label="Random Data", zorder=1)

plt.show()

输出:

带图层的叠加图

完整代码:

import matplotlib.pyplot as plt
from random import randrange

data_1 = [randrange(0, 10) for _ in range(0, 10)]
data_2 = [randrange(0, 10) for _ in range(0, 10)]

plt.plot(data_1, label="Random Data", c="Red", zorder=9)
plt.bar(data_2, data_1, label="Random Data", zorder=10)

plt.show()
Author: Maxim Maeder
Maxim Maeder avatar Maxim Maeder avatar

Hi, my name is Maxim Maeder, I am a young programming enthusiast looking to have fun coding and teaching you some things about programming.

GitHub

相关文章 - Matplotlib Plot