Python中Matplotlib模块fill_between函数用于在两条线之间填充颜色

在这里插入图片描述
在Python中,matplotlib 库中有 fill_between 函数用于在两条线之间填充颜色,它通常用于数据可视化,以强调两个曲线之间的差异或区域。

fill_between 函数的基本用法:

fill_between(x, y1, y2=0, where=None, interpolate=False, step=None, **kwargs)
  • x: x轴上的数值序列。
  • y1: 第一个曲线(或水平线)的y值序列。
  • y2: 第二个曲线(或水平线)的y值序列,默认为0,即填充到x轴。
  • where: 指定填充的条件,可以是一个布尔数组或其他条件表达式。只有满足条件的区域才会被填充。
  • interpolate: 如果为True,将在两个曲线之间进行插值填充。
  • step: 如果指定,表示应在曲线之间进行阶梯状填充。
  • **kwargs: 其他关键字参数,用于设置填充区域的样式,例如颜色、透明度等。

示例:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

plt.plot(x, y1, label='Sin(x)')
plt.plot(x, y2, label='Cos(x)')

plt.fill_between(x, y1, y2, where=(y1 > y2), color='yellow', alpha=0.3, interpolate=True, label='Fill between')

plt.legend()
plt.show()

fill_between 函数用于填充 y1y2 之间的区域,通过 where 参数指定了填充的条件。当 y1 大于 y2 时,填充的区域为黄色,透明度为0.3。

参数解释:

  • color: 设置填充的颜色。
  • alpha: 设置填充的透明度。
  • label: 设置填充区域的标签,用于图例。

fill_between 函数允许你灵活地根据需要调整填充的条件和样式,以创建符合你数据可视化需求的图表。