matplotlib.pyplot.annotate

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/asty9000/article/details/88623061

调用格式:

matplotlib.pyplot.annotate(s, xy, *args, **kwargs)

用文本s标注点xy, 在最简单的形式中,文本放在xy处。此外还可以选择在另一位置显示文本,通过定义arrowprops添加一个从文本指向点xy的箭头。

参数

s:标注文本。

xy:要标注的点,一个元组(x,y)。

xytext:可选的,文本的位置,一个元组(x,y)。如果没有设置,默认为要标注的点的坐标。

xycoords:可选的,点的坐标系。字符串、Artist、Transform、callable或元组。

合法的坐标系字符串如下:

说明 说明
figure points 从图的左下角开始的点数。 figure pixels 从图的左下角开始的像素数。
figure fraction 小数,图的左下角为(0,0),右上角为(1,1)。 axes points 从子图的左下角开始的点数。
axes pixels 从子图的左下角开始的像素数。 axes fraction 小数,子图的左下角为(0,0),右上角为(1,1)。
data 使用被标注对象的坐标系,默认值。 polar 极坐标系,(theta,r)。

Artist:如果是Artist实例,那么xy会被解析为Artist实例的边框的小数坐标,即Artist实例的边框为一个小数坐标系, 边框的左下角坐标为(0,0)、右上角为(1,1)。这种情况下Artist实例必须已完成绘制。

Transform:

坐标系 调用方法 说明
data ax.transData 用户数据坐标系,由xlim和ylim控制。
axes ax.transAxes 子图坐标系,左下角为(0,0),右上角为(1,1)。
figure fig.transFigure 图坐标系,左下角为(0,0),右上角为(1,1)。
display None 像素坐标系,(0,0)是显示器的左下角,(width, height) 是显示器的右上角

callable:一个接受一个renderer对象并返回BboxBase或Transform实例的可调用对象。

元组:包含两个坐标系的元组,第一个是x坐标的坐标系,第二个是y坐标的坐标系。

textcoords:可选的,文本的坐标。默认为xycoods的值。可用数据类型与xycoods相同:字符串、Artist、Transform、callable或元组。并且字符串类型值还额外接受以下两项:

说明
offset points 相对xy偏移的点数
offset pixels 相对xy偏移的像素数

 arrowprops:可选的,剪头属性,字典类型。用于在xy和xytext之间绘制FancyArrowPatch箭头的属性。在合法的属性中,arrowstyle与以下属性是互斥的。

说明
width 以点为单位的箭头的宽度。
headwidth 以点为单位的箭头底部的宽度。
headlength 以点为单位的箭头的长度。
shrink 从两端收缩的总长的百分比。
任何matplotlib.patches.FancyArrowPatch属性。

 arrowstyle的合法值如下:

说明(属性集合) 说明(属性集合)
- <-> head_length=0.4,head_width=0.2
-> head_length=0.4,head_width=0.2 <|- head_length=0.4,head_width=0.2
-[ widthB=1.0,lengthB=0.2,angleB=None <|-|> head_length=0.4,head_width=0.2
|-| widthA=1.0,widthB=1.0 fancy head_length=0.4,head_width=0.4,tail_width=0.4
-|> head_length=0.4,head_width=0.2 simple head_length=0.5,head_width=0.5,tail_width=0.2
<- head_length=0.4,head_width=0.2 wedge tail_width=0.3,shrink_factor=0.5

在使用arrowstyle时,可用的属性为:

说明 说明
connectionstyle 连接的样式。 shrinkB 箭头终点的缩进点数,默认为2。
relpos 箭头起始点相对注释文本的位置,默认为 (0.5, 0.5)。 mutation_scale 用于缩放arrowstyle的属性,默认为以点数为单位的文本大小。
patchA 箭头起点的形状,默认为文本框。 mutation_aspect 在变化之前矩形的高度会被此值压缩,变化后的矩形会被它的倒数拉伸,默认为1。
patchB 箭头终点的形状,默认为空。 ? 任何atplotlib.patches.PathPatch属性。
shrinkA 箭头起点的缩进点数,默认为2。    

annotation_clip :可选的,布尔型或None。当标注点xy位于坐标轴区域外时,是否绘制标注。如果为True,则只有当xy在坐标轴内时才会绘制注释。如果为False,则总是绘制注释。如果为None,则只有当xy在坐标轴内且xycoords为data时绘制注释。默认为None。

**kwargs:额外的传递给matplotlib.text.Text的参数。

返回值

返回值为一个matplotlib.text.Annotation对象。

猜你喜欢

转载自blog.csdn.net/asty9000/article/details/88623061