matplotlib.pyplot.annotate
- matplotlib.pyplot.annotate(text, xy, *args, **kwargs)[source]
-
Подпишите точку xy текстом text.
В самом простом виде текст размещается в точке xy.
Необязательно, текст можно отобразить в другой позиции xytext. Стрелка, указывающая от текста к аннотируемой точке xy, может быть добавлена путем определения arrowprops.
- Параметры
-
- textstr
-
Текст аннотации.
- xy(float, float)
-
Точка (x, y) для аннотации. Система координат определяется параметром xycoords.
- xytext(float, float), по умолчанию: xy
-
Позиция (x, y) для размещения текста. Система координат определяется параметром textcoords.
-
xycoordsstr или
ArtistилиTransformили callable или (float, float), по умолчанию: 'data' -
Система координат, в которой заданы значения xy. Поддерживаются следующие типы значений:
-
Одно из следующих строк:
Значение
Описание
'figure points'
Точки от нижнего левого угла фигуры
'figure pixels'
Пиксели от нижнего левого угла фигуры
'figure fraction'
Доля фигуры от нижнего левого угла
'subfigure points'
Точки от нижнего левого угла подрисунка
'subfigure pixels'
Пиксели от нижнего левого угла подрисунка
'subfigure fraction'
Доля подрисунка от нижнего левого угла
'axes points'
Точки от нижнего левого угла осей
'axes pixels'
Пиксели от нижнего левого угла осей
'axes fraction'
Доля осей от нижнего левого угла
'data'
Использовать систему координат объекта, к которому применяется аннотация (по умолчанию)
'polar'
(theta, r), если координаты не по умолчанию ('data')
Обратите внимание, что 'subfigure pixels' и 'figure pixels' совпадают для родительской фигуры, поэтому пользователи, которые хотят использовать код, применимый к подрисунку, могут использовать 'subfigure pixels'.
- Объект
Artist: xy интерпретируется как доля области объектаBbox. Например, (0, 0) будет соответствовать нижнему левому углу области, а (0.5, 1) — центру верхней границы. - Объект
Transformдля преобразования xy в экранные координаты. -
Функция с одной из следующих подписей:
def transform(renderer) -> Bbox def transform(renderer) -> Transform
где renderer — подкласс
RendererBase.Результат функции интерпретируется как в случае с
ArtistиTransform. - Кортеж (xcoords, ycoords), определяющий отдельные системы координат для x и y. xcoords и ycoords должны быть одного из описанных выше типов.
См. Подробные аннотации для получения дополнительной информации.
-
-
textcoordsstr или
ArtistилиTransformили callable или (float, float), по умолчанию: значение xycoords -
Система координат, в которой заданы значения xytext.
Допустимы все значения xycoords, а также следующие строки:
Значение
Описание
'offset points'
Смещение (в пунктах) от значения xy
'offset pixels'
Смещение (в пикселях) от значения xy
- arrowpropsdict, необязательно
-
Свойства, используемые для рисования стрелки
FancyArrowPatchмежду позициями xy и xytext. По умолчанию None, т.е. стрелка не рисуется.По историческим причинам существуют два различных способа задания стрелок, "простые" и "сложные":
Простая стрелка:
Если arrowprops не содержит ключ 'arrowstyle', допустимые ключи:
Ключ
Описание
width
Ширина стрелки в пунктах
headwidth
Ширина основания головки стрелки в пунктах
headlength
Длина головки стрелки в пунктах
shrink
Доля от общей длины для уменьшения с обоих концов
?
Любой ключ для
matplotlib.patches.FancyArrowPatchСтрелка прикрепляется к краю текстового блока, точное положение (углы или центры) зависит от направления.
Сложная стрелка:
Используется, если в arrowprops указан 'arrowstyle'.
Допустимые ключи — параметры
FancyArrowPatch:Ключ
Описание
arrowstyle
стиль стрелки
connectionstyle
стиль соединения
relpos
см. ниже; по умолчанию (0.5, 0.5)
patchA
по умолчанию — область текста
patchB
по умолчанию — None
shrinkA
по умолчанию — 2 пункта
shrinkB
по умолчанию — 2 пункта
mutation_scale
по умолчанию — размер текста (в пунктах)
mutation_aspect
по умолчанию — 1.
?
любой ключ для
matplotlib.patches.PathPatchТочное начальное положение стрелки определяется параметром relpos. Это кортеж относительных координат текстового блока, где (0, 0) — нижний левый угол, а (1, 1) — верхний правый угол. Значения <0 и >1 поддерживаются и указывают на точки за пределами текстового блока. По умолчанию (0.5, 0.5) начальная точка находится в центре текстового блока.
- annotation_clipbool или None, по умолчанию: None
-
Определяет, будет ли рисоваться аннотация, когда точка аннотации xy находится за пределами области осей.
- Если True, аннотация будет рисоваться только когда xy находится внутри осей.
- Если False, аннотация будет всегда рисоваться.
- Если None, аннотация будет рисоваться только когда xy находится внутри осей и xycoords равно 'data'.
- **kwargs
-
Дополнительные параметры передаются объекту
Text.
- Возвращает
-
Annotation
См. также
Примеры использования matplotlib.pyplot.annotate
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/_as_gen/matplotlib.pyplot.annotate.html