matplotlib.pyplot.annotate
- matplotlib.pyplot.annotate(text, xy, xytext=None, xycoords='data', textcoords=None, arrowprops=None, annotation_clip=None, **kwargs)[source]
-
Добавляет аннотацию к точке xy с текстом text.
В простейшем случае текст размещается в точке xy.
В качестве опции, текст может быть отображён в другой позиции xytext. Стрелка, указывающая от текста к аннотируемой точке xy, может быть добавлена, задав параметр arrowprops.
- Параметры:
-
- textstr
-
Текст аннотации.
- xy(float, float)
-
Точка (x, y), к которой добавляется аннотация. Система координат определяется параметром xycoords.
- xytext(float, float), по умолчанию: xy
-
Позиция (x, y) для размещения текста. Система координат определяется параметром textcoords.
-
xycoordsодиночное или двумерное значение типа str или
ArtistилиTransformили вызываемая функция, по умолчанию: 'data' -
Система координат, в которой задана точка xy. Поддерживаются следующие типы значений:
-
Одно из следующих строк:
Значение
Описание
'figure points'
Точки от нижнего левого угла фигуры
'figure pixels'
Пиксели от нижнего левого угла фигуры
'figure fraction'
Доля фигуры от нижнего левого угла
'subfigure points'
Точки от нижнего левого угла подрисунка
'subfigure pixels'
Пиксели от нижнего левого угла подрисунка
'subfigure fraction'
Доля подрисунка от нижнего левого угла
'axes points'
Точки от нижнего левого угла области построения
'axes pixels'
Пиксели от нижнего левого угла области построения
'axes fraction'
Доля области построения от нижнего левого угла
'data'
Использует систему координат объекта, к которому добавляется аннотация (по умолчанию)
'polar'
(θ, 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 должны быть одного из вышеперечисленных типов.
См. Расширенная аннотация для получения более подробной информации.
-
-
textcoordsодиночное или двумерное значение типа str или
ArtistилиTransformили вызываемая функция, по умолчанию: значение xycoords -
Система координат, в которой задана точка xytext.
Все значения xycoords также допустимы, а также следующие строки:
Значение
Описание
'offset points'
Смещение (в пунктах) от значения xy
'offset pixels'
Смещение (в пикселях) от значения xy
- arrowpropsсловарь, необязательно
-
Свойства, используемые для рисования стрелки
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–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/_as_gen/matplotlib.pyplot.annotate.html