matplotlib中添加直线的两种方式

直线在可视化中具有重要作用,最经典的用法,就是在阈值的位置添加一条直线,可以清晰的看出点与阈值的关系。在matplotlib中,有以下两种方式,用于在图中绘制直线

1.  hlines和vlines

hlines用于绘制水平线,vlines用于绘制垂直线,二者的用法相同,都需要3个基本参数,只不过参数的名称稍有差别,vlines的基本用法如下

>>> 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而已,用法如下

>>> plt.hlines(x, xmin=y, xmax=y1)

输出结果如下

该系列函数一次可以绘制多条直线,而且可以根据起始和结束坐标,灵活指定直线的跨度。

2. axhline和axvline

该系列函数一次只可以添加一条直线,而且默认情况下,直线都是横跨整个绘图区域的,所以经典的用法是在一个已有的图表上,增加阈值线。以axhline为例,基本用法如下

>>> 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函数则基于坐标的方式灵活指定直线的范围,实际使用中,根据自己的需要灵活选择。

生物信息学

数据可视化时添加置信区间

2020-8-18 0:27:02

生物信息学

如何使用RStudio的后台任务功能

2020-8-20 18:25:14

加入Q群
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索