matplotlib 使用简明教程(四)-辅助性元件

辅助线
`plt.vlines(x, ymin, ymax, colors='k', label='')` 和 `plt.hlines(y, xmin, xmax, colors='k', label='')`
`plt.axvline(x=0, ymin=0, ymax=1, hold=None, **kwargs)` 和 `plt.axhline(y=0, xmin=0, xmax=1, hold=None, **kwargs)`
`plt.axvspan(xmin, xmax, ymin=0, ymax=1, hold=None, **kwargs)` 和 `plt.axhspan(ymin, ymax, xmin=0, xmax=1, hold=None, **kwargs)`
清除
`plt.cla()`
`delaxes(ax=None)`
坐标轴设置
`plt.axis(*v, **kwargs)`
`plt.xlim()` 和 `plt.ylim()`
`plt.xlabel(label, fontdict=None, labelpad=None, **kwargs)` 和 `plt.ylabel(label, fontdict=None, labelpad=None, **kwargs)`
`plt.xscale(scale, **kwargs)` 和 `plt.yscale(scale, **kwargs)`
`plt.xticks(locs, [labels], **kwargs)` 和 `plt.yticks(locs, [labels], **kwargs)`
`plt.minorticks_off()` 和 `plt.minorticks_on()`
`plt.autoscale(enable=True, axis='both')`
`plt.grid(b=None, which='major', axis='both', **kwargs)`
`plt.rgrids()`
标注、标题与图例
`plt.title(s, *args, **kwargs)`
`plt.annotate(s, xy, xytext=None, xycoords=None, textcoords)`
`plt.legend()`
`plt.arrow(x, y, dx, dy, hold=None, **kwargs)`
`plt.text(x, y, s, **kwargs)`
`plt.colorbar(mappable=None, cax=None, ax=None, **kw)`
`plt.table(**kwargs)`
除了一般的图表,还会有图例、辅助线等辅助性的元件,在这里进行一些介绍

辅助线
plt.vlines(x, ymin, ymax, colors='k', label='') 和 plt.hlines(y, xmin, xmax, colors='k', label='')
绘制一条垂直/水平的辅助线,以 vlines 为例,说明重要参数:

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)
绘制一条横跨当前图表的垂直/水平辅助线,以 axvline 为例,说明重要参数:

x:横坐标
ymin, ymax:辅助线两头纵坐标相对于整个图表的位置,范围在 0 到 1 之间。
与 vlines 的区别在于

可以不规定 ymin 和 ymax
ymin 和 ymax 的定义也不同,axvline 中是做了归一化的
不能增加 label
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 之间
清除
plt.cla()
清除当前的图表(axes)

delaxes(ax=None)
移除 ax 参数定义的 axes(图表),如果 ax 为 None,则移除当前的 axes(图表)

坐标轴设置
plt.axis(*v, **kwargs)
主要用于设置坐标轴的属性,返回值为当前的坐标轴范围 [xmin, xmax, ymin, ymax],几种调用方式如下:

 

 


plt.xlim() 和 plt.ylim()
设置并返回 x 轴和 y 轴的数值范围,以 xlim() 为例说明调用方式:

 

 


plt.xlabel(label, fontdict=None, labelpad=None, **kwargs) 和 plt.ylabel(label, fontdict=None, labelpad=None, **kwargs)
设置 x 轴及 y 轴的标签。

plt.xscale(scale, **kwargs) 和 plt.yscale(scale, **kwargs)
设置 x 轴及 y 轴的缩放方式,参数如下:

‘linear’: 线性
‘log’: 指数类型,支持的 kwargs 包括:
basex/basey: 指数的底
nonposx/nonposy: 如何处理负数,直接截掉(‘mask’)还是化成一个接近 0 的数(‘clip’)
subx/suby: 需要是一个整数构成的数组,用于确定坐标轴上 subtick 的位置
‘logit’: 评定模型,支持的 kwargs 包括:
nonpos: 对于大于 1 或小于 0 的数据如何处理,直接截掉(‘mask’)或化成一个接近 1 或 0 的数(‘clip’)
‘symlog’: 对数类型,支持的 kwargs 包括:
basex/basey: 对数的底
linthreshx/linthreshy: 在 (-x, x) 范围内采用线性方式
subx/suby: 需要是一个整数构成的数组,用于确定坐标轴上 subtick 的位置
plt.xticks(locs, [labels], **kwargs) 和 plt.yticks(locs, [labels], **kwargs)
设置坐标轴上 tick(坐标点?) 的位置,如果调用时未添加参数,则获取当前图表的次坐标设置。
调用参数说明如下:

loc: 次坐标的位置,是一个列表
labels: 放置在 loc 对应位置的标签
plt.minorticks_off() 和 plt.minorticks_on()
关闭/打开当前图表的次坐标。

plt.autoscale(enable=True, axis='both')
是否自动设置坐标轴的范围。
axis 可选 x、y、both

plt.grid(b=None, which='major', axis='both', **kwargs)
打开/关闭 axes 的栅格。

主要参数:

b:True、False 或 None,分别是打开栅格、关闭栅格、变更栅格状态(取反)
which:‘major’ 主、‘minor’ 次、‘both’ 两者都
axis:‘both’ 两者、‘x’ x 轴、‘y’ y 轴

plt.rgrids()

绘制角坐标图的栅格。

 

 


标注、标题与图例
plt.title(s, *args, **kwargs)
为当前图表添加标题,重要参数如下:

s:标题内容
fontdict:标题样式,是一个字典
loc:标题位置,可选 ‘centet’, ‘left’, ‘right’
plt.annotate(s, xy, xytext=None, xycoords=None, textcoords)
在图表中进行标注,重要参数说明如下:

s:标注的字符串
xy:标注所在的位置
xytext:如果有规定,则文字位置以该参数为准,通过一个箭头指向 xy 所在位置
xycoords:xy 坐标系统
‘data’:沿用所标注对象的坐标方式
‘figure points’:从画布的左下角,按照“点”来计算
‘figure pixels’:从画布的左下角,按照“像素”来计算
‘figure fraction’:从画布的左下角,按照“比例”来计算
‘axes points’:从图表的左下角,按照“点”来计算
‘axes pixels’:从图表的左下角,按照“像素”来计算
‘axes fraction’:从图表的左下角,按照“比例”来计算
‘polar’:极坐标
textcoords:xytext 的坐标体系
包括所有 xycoords 的方式
‘offset points’:从 xy 处,按照“点”来计算
‘offset pixels’:从 xy 处,按照“像素”来计算
plt.legend()
添加图例。

 

 plt.arrow(x, y, dx, dy, hold=None, **kwargs)

绘制一个箭头,位置从 (x,y) 到 (x+dx, y+dy)

plt.text(x, y, s, **kwargs)
在图表中添加文字,重要参数如下:

x、y:文字的坐标,默认使用数据(data)坐标,可以使用 transform 来改变坐标轴类型
s:文字内容
plt.colorbar(mappable=None, cax=None, ax=None, **kw)
在图表边绘制一个颜色栏,显示当前颜色图并指示数据值到颜色图的映射。

 

 

 

绘制调用方式如下:

 

 plt.table(**kwargs)

给当前 axes 中添加一个表格,重要参数如下:

cellText:表格中的内容
cellColours:默认 None,定义每个单元格颜色
cellLoc:表格中文字的对齐方式,默认 ‘right’,可选 ‘left’、‘bottom’
colWidths:默认 None,定义每列的宽度
rowLabels:每行的标签
rowColours:定义每行标签的颜色
rowLoc:行标签文字的对齐方式,默认 ‘left’
colLabels:每列的标签
colColours:每列标签的颜色
colLoc:列标签文字的对齐方式,默认 ‘center’,
loc:表格的位置,默认 ‘bottom’
系列文章:

matplotlib 使用简明教程(一)-基础概念:
https://blog.csdn.net/fenghuizhidao/article/details/79352882
matplotlib 使用简明教程(二)-常用图表
https://blog.csdn.net/fenghuizhidao/article/details/83090043
matplotlib 使用简明教程(三)-一些专业图表简介
https://blog.csdn.net/fenghuizhidao/article/details/83090165
matplotlib 使用简明教程(四)-辅助性元件
https://blog.csdn.net/fenghuizhidao/article/details/83090249
matplotlib 使用简明教程(五)-画布、图表、元素基础操作
https://blog.csdn.net/fenghuizhidao/article/details/83090320
matplotlib 使用简明教程(六)-图像、动画相关
https://blog.csdn.net/fenghuizhidao/article/details/83090512
matplotlib 使用简明教程(七)-样式定义
https://blog.csdn.net/fenghuizhidao/article/details/83090553
————————————————
版权声明:本文为CSDN博主「平头某」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fenghuizhidao/article/details/83090249

posted @ 2021-08-04 13:31  常给自己加个油  阅读(407)  评论(0编辑  收藏  举报