直线在可视化中具有重要作用,最经典的用法,就是在阈值的位置添加一条直线,可以清晰的看出点与阈值的关系。在matplotlib中,有以下两种方式,用于在图中绘制直线
1. hlines和vlines
hlines用于绘制水平线,vlines用于绘制垂直线,二者的用法相同,都需要3个基本参数,只不过参数的名称稍有差别,vlines的基本用法如下
代码语言:javascript复制>>> import matplotlib.pyplot as plt
>>> import numpy as np
>>> x = [1, 2, 3, 4]
>>> y = np.array([1, 2, 3, 4])
>>> y1 = y 1
>>> plt.vlines(x, ymin=y, ymax=y1)
输出结果如下
hlines只不过将ymax和ymin,换成了xmax和xmin而已,用法如下
代码语言:javascript复制>>> plt.hlines(x, xmin=y, xmax=y1)
输出结果如下
该系列函数一次可以绘制多条直线,而且可以根据起始和结束坐标,灵活指定直线的跨度。
2. axhline和axvline
该系列函数一次只可以添加一条直线,而且默认情况下,直线都是横跨整个绘图区域的,所以经典的用法是在一个已有的图表上,增加阈值线。以axhline为例,基本用法如下
代码语言:javascript复制>>> x = np.arange(0, 4 * np.pi, 0.01)
>>> y = np.sin(x)
>>> threshold = 0.75
>>> plt.plot(x, y,'k')
>>> plt.axhline(threshold, color='green', lw=2, alpha=0.7)
输出结果如下
这两种方式中,axhine和axvline基于绘图区域百分比的形式添加直线,hlines和vlines函数则基于坐标的方式灵活指定直线的范围,实际使用中,根据自己的需要灵活选择。
·end·