在 matplotlib 中为曲线创建逻辑阴影区域
matplotlibpythondata visualization
要在 matplotlib 中为曲线创建逻辑阴影区域,我们可以采取以下步骤
步骤
设置图形大小并调整子图之间和周围的填充。
使用 numpy 创建 t、s1 和 s2 数据点。
创建一个图形和一组子图。
绘制 t 和 s1 数据点;在轴上添加一条水平线。
创建一个横跨 *yrange* 的水平条集合,其中包含一系列 xranges。
向轴的集合添加一个 '~.Collection' ;返回该 集合。
要显示该图,请使用 Show() 方法。
示例
import numpy as np import matplotlib.pyplot as plt import matplotlib.collections as collections plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True t = np.arange(0.0, 2, 0.01) s1 = np.sin(2 * np.pi * t) s2 = 1.2 * np.sin(4 * np.pi * t) fig, ax = plt.subplots() ax.plot(t, s1, color='black') ax.axhline(0, color='black', lw=2) collection = collections.BrokenBarHCollection.span_where(t, ymin=0, ymax=1, where=s1 > 0, facecolor='green', alpha=0.5 ) ax.add_collection(collection) collection = collections.BrokenBarHCollection.span_where( t, ymin=-1, ymax=0, where=s1 < 0, facecolor='red', alpha=0.5 ) ax.add_collection(collection) plt.show()
输出
它将产生以下输出 −