【问题标题】:Shading an area between two points in a matplotlib plot在 matplotlib 图中对两点之间的区域进行着色
【发布时间】:2011-04-10 13:25:55
【问题描述】:

如何在matplotlib 绘图中的两点之间添加阴影区域?

在下面的示例matplotlib 中,我使用Skitch 手动添加了黄色阴影区域。我想知道怎么做这个 sans-Skitch。

【问题讨论】:

    标签: python matplotlib


    【解决方案1】:

    您可以只使用函数axvspan。这样做的好处是,无论您如何平移/缩放绘图,垂直区域(或水平区域,在 axhspan 的情况下)都将保持阴影。有一个完整的例子here

    看下面一个简单的例子:

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.linspace(0, 20, 500)
    y = np.cos(3*x) - 2*np.cos(5*x) + 0.5*np.cos(6*x)
    
    a = 5
    b = 15
    
    plt.axvspan(a, b, color='y', alpha=0.5, lw=0)
    plt.plot(x, y)
    plt.savefig('shade.png', dpi=300)
    plt.show()
    

    结果是

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-13
      • 1970-01-01
      • 2011-03-30
      • 2012-04-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多