【2.8.5】matplotlib辅助线(vlines/hlines/axvspan/axhspan)
一、vlines
绘制一条垂直/水平的辅助线,以 vlines 为例,
plt.vlines(x, ymin, ymax, colors='k', label='') 和 plt.hlines(y, xmin, xmax, colors='k', label='')
说明重要参数:
x:横坐标
ymin,ymax:辅助线纵坐标的最小值、最大值
label:标签内容
plt.axvline(x=0, ymin=0, ymax=1, hold=None, **kwargs) 和 plt.axhline(y=0, xmin=0, xmax=1, hold=None, **kwargs)
二、vlines
绘制一条横跨当前图表的垂直/水平辅助线,以 axvline 为例,说明重要参数:
x:横坐标
ymin, ymax:辅助线两头纵坐标相对于整个图表的位置,范围在 0 到 1 之间。
与 vlines 的区别在于:
- 可以不规定 ymin 和 ymax
- ymin 和 ymax 的定义也不同,axvline 中是做了归一化的
- 不能增加 label
三、axvspan、axhspan
绘制一个横跨当前图表的垂直/水平区域
plt.axvspan(xmin, xmax, ymin=0, ymax=1, hold=None, **kwargs) 和 plt.axhspan(ymin, ymax, xmin=0, xmax=1, hold=None, **kwargs)
,以 axvspan 为例,说明重要参数:
xmin, xmax:区域的左、右边界
ymin,ymax:区域上下纵坐标对于整个图表的位置,范围在 0 到 1 之间
例子:
t = np.arange(-1, 2, .01)
s = np.sin(2 * np.pi * t)
#曲线
plt.plot(t, s)
# 以y轴0点画横线
plt.axhline(linewidth=8, color='#d62728')
# 画横线
plt.axhline(y=1)
# 画纵线
plt.axvline(x=1)
# Draw a thick blue vline at x=0 that spans the upper quadrant of the yrange
# plt.axvline(x=0, ymin=0.75, linewidth=8, color='#1f77b4')
# 画线段
plt.axhline(y=.5, xmin=0.25, xmax=0.75)
# 平行填充
plt.axhspan(0.25, 0.75, facecolor='0.5', alpha=0.5)
# 垂直填充
plt.axvspan(1.25, 1.55, facecolor='#2ca02c', alpha=0.5)
# 坐标轴
plt.axis([-1, 2, -1, 2])
plt.show()
参考资料:
这里是一个广告位,,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn