matplotlib.pyplot.annotate#

matplotlib.pyplot.annotate(text, xy, xytext=None, xycoords='data', textcoords=None, arrowprops=None, annotation_clip=None, **kwargs)[源代码][源代码]#

用文本 text 标注点 xy

在最简单的形式中,文本被放置在 xy 处。

可选地,文本可以显示在另一个位置 xytext。通过定义 arrowprops,可以添加一个从文本指向注释点 xy 的箭头。

参数:
文本str

注释的文本。

xy(浮点数, 浮点数)

要注释的点 (x, y)。坐标系统由 xycoords 决定。

xytext : (float, float), 默认值: xy(浮点数, 浮点数), 默认值:

文本放置的位置 (x, y)。坐标系统由 textcoords 决定。

xycoords : 单个或两个元组的 str 或 ArtistTransform 或可调用对象,默认: 'data'单个或两个字符串的元组或

给出 xy 的坐标系。支持以下类型的值:

  • 以下字符串之一:

    描述

    'figure points'

    从图的左下角开始

    'figure 像素'

    从图形的左下角像素

    'figure fraction'

    从左下角开始的图形部分

    '子图点'

    子图左下角的点

    '子图像素'

    子图左下角的像素

    'subfigure 比例'

    从左下角开始的子图比例

    '轴点'

    从Axes的左下角开始的点

    'axes pixels'

    从Axes的左下角开始的像素

    'axes fraction'

    从左下角的轴的分数

    '数据'

    使用被注释对象的坐标系(默认)

    '极地'

    (theta, r) 如果不是原生的 '数据' 坐标

    注意,对于父图来说,'subfigure 像素' 和 'figure 像素' 是相同的,因此希望在子图中使用代码的用户可以使用 'subfigure 像素'。

  • 一个 Artistxy 被解释为艺术家 Bbox 的分数。例如,(0, 0) 将是边界框的左下角,而 (0.5, 1) 将是边界框的中心顶部。

  • 一个将 xy 转换为屏幕坐标的 Transform

  • 具有以下签名之一的函数:

    def transform(renderer) -> Bbox
    def transform(renderer) -> Transform
    

    其中 renderer 是一个 RendererBase 子类。

    函数的结果解释方式与上述 ArtistTransform 的情况类似。

  • 一个元组 (xcoords, ycoords) ,用于为 xy 指定单独的坐标系。xcoordsycoords 必须分别是上述描述的类型之一。

更多详情请参见 高级注解

textcoords : 单个或两个字符串或 ArtistTransform 或可调用对象,默认值:xycoords 的值单个或两个字符串的元组或

xytext 所处的坐标系统。

所有 xycoords 值都是有效的,以及以下字符串:

描述

'偏移点'

xy 值的偏移量,以点为单位

'偏移像素'

偏移量,以像素为单位,从 xy

'偏移字体大小'

偏移量,相对于字体大小,从 xy

arrowpropsdict, 可选

用于在位置 xyxytext 之间绘制 FancyArrowPatch 箭头的属性。默认为 None,即不绘制箭头。

由于历史原因,指定箭头有两种不同的方式,“简单”和“花哨”:

简单的箭头:

如果 arrowprops 不包含键 'arrowstyle',则允许的键是:

描述

宽度

箭头的宽度,以点为单位

headwidth

箭头头部的基部宽度,单位为点

headlength

箭头头部的长度,单位为点

缩小

总长度在两端缩小的比例

toctree 是一个 reStructuredText 指令 ,这是一个非常多功能的标记。指令可以有参数、选项和内容。

任何 FancyArrowPatch 属性

箭头附着在文本框的边缘,确切的位置(角或中心)取决于它指向的方向。

花式箭头:

如果 arrowprops 中提供了 'arrowstyle',则使用此选项。

有效的键是以下 FancyArrowPatch 参数:

描述

箭头样式

箭头样式

连接样式

连接样式

relpos

见下文;默认值为 (0.5, 0.5)

patchA

默认是文本的边界框

patchB

默认是 None

缩小A

以点为单位。默认是2点。

缩小B

以点为单位。默认是2点。

mutation_scale

默认是文本大小(以点为单位)

mutation_aspect

默认值为 1

toctree 是一个 reStructuredText 指令 ,这是一个非常多功能的标记。指令可以有参数、选项和内容。

任何 FancyArrowPatch 属性

箭头的精确起始位置由 relpos 定义。它是一个文本框的相对坐标元组,其中 (0, 0) 是左下角,(1, 1) 是右上角。支持 <0 和 >1 的值,并指定文本框外的点。默认值为 (0.5, 0.5),因此起始点位于文本框的中心。

annotation_clip布尔值或无, 默认: 无

当注释点 xy 位于 Axes 区域之外时,是否裁剪(即不绘制)注释。

  • 如果 True,当 xy 在 Axes 之外时,注释将被裁剪。

  • 如果 False,注释将始终被绘制。

  • 如果为 None,当 xy 在 Axes 之外且 xycoords 为 'data' 时,注释将被裁剪。

**kwargs

额外的 kwargs 传递给 Text

返回:
Annotation

参见

注释

注释

备注

这是 axes.Axes.annotatepyplot 包装器

使用 matplotlib.pyplot.annotate 的示例#

帽子图

Hat graph

尺度不变角度标签

Scale invariant angle label

注释变换

Annotate transform

注释图表

Annotating a plot

注释极坐标图

Annotate polar plots

Pyplot 教程

Pyplot tutorial