Matplotlib axhline()和axvline():设置参考线(附带实例)
参考线是从 x 轴的任意位置沿垂直方向延伸,或从 y 轴的任意位置沿水平方向延伸出的线条。
与网格线不同,参考线不一定必须从刻度延伸,而可以从刻度范围内的任意值延伸。
下面的任意一行代码都将在 y 轴上的数字 60 所在的位置添加一条水平参考线:

图 1 添加水平参考线
下面的任意一行代码都将在 x 轴上的 8 月所在的位置添加一条垂直参考线:

图 2 添加垂直参考线
虽然 x 轴的刻度显示为“数字+月”的形式,但是不能将这种格式设置为参数的值,而是需要指定刻度的真实值,而非经过格式化后的显示值。
下面的任意一行代码都将 y 轴的参考线设置为虚线,将线宽设置为 3 个像素点:

图 3 更改参考线的线条格式
为参考线设置线型的参数值与下表中列出的相同:
在 Matplotlib 中,为不同对象进行的同一种设置所使用的参数值都是相似或完全相同的,除了此处的线型,还有线宽、颜色等。
与网格线不同,参考线不一定必须从刻度延伸,而可以从刻度范围内的任意值延伸。
Matplotlib在图表中添加参考线
使用 pyplot 模块中的 axhline() 和 axvline() 函数,或 Axes 对象的 axhline() 和 axvline() 方法,可以在图表中添加参考线:- axhline() 函数和 axhline() 方法的第一个参数表示 y 轴的某个刻度值,将从该值所在的位置添加一条水平参考线;
- axvline() 函数和 axvline() 方法的第一个参数表示 x 轴的某个刻度值,将从该值所在的位置添加一条垂直参考线。
下面的任意一行代码都将在 y 轴上的数字 60 所在的位置添加一条水平参考线:
plt.axhline(60) ax.axhline(60)效果如下图所示:

图 1 添加水平参考线
下面的任意一行代码都将在 x 轴上的 8 月所在的位置添加一条垂直参考线:
plt.axvline(8) ax.axvline(8)效果如下图所示:

图 2 添加垂直参考线
虽然 x 轴的刻度显示为“数字+月”的形式,但是不能将这种格式设置为参数的值,而是需要指定刻度的真实值,而非经过格式化后的显示值。
Matplotlib更改参考线的线条格式
与设置网格线的线条格式类似,为参考线也可以设置线条的颜色、线型和线宽等格式,使用的参数和方法相同。下面的任意一行代码都将 y 轴的参考线设置为虚线,将线宽设置为 3 个像素点:
plt.axhline(60, linestyle='--', linewidth=3) ax.axhline(60, linestyle='--', linewidth=3)效果如下图所示:

图 3 更改参考线的线条格式
为参考线设置线型的参数值与下表中列出的相同:
取值 | 线型 |
---|---|
solid 或 - | 实线 |
dashed 或 -- | 虚线 |
dashdot 或 -. | 点画线 |
dotted 或 : | 点线 |
在 Matplotlib 中,为不同对象进行的同一种设置所使用的参数值都是相似或完全相同的,除了此处的线型,还有线宽、颜色等。