繁体   English   中英

在matplotlib图中对两点之间的区域进行着色

[英]Shading an area between two points in a matplotlib plot

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

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

替代文字

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

看一个简单的例子如下:

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()

这就是结果 在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM