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'
(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 должны быть одного из вышеописанных типов.
См. Расширенная аннотация для более подробной информации.
-
-
textcoordsодиночное или двухадресное значение типа str или
ArtistилиTransformили вызываемая функция, по умолчанию: значение xycoords -
Система координат, в которой заданы координаты xytext.
Все значения xycoords также допустимы, а также следующие строки:
Значение
Описание
'offset points'
Смещение в точках от значения xy
'offset pixels'
Смещение в пикселях от значения xy
'offset fontsize'
Смещение, относительное к размеру шрифта, от значения xy
- arrowpropsсловарь, необязательно
-
Свойства, используемые для рисования стрелки
FancyArrowPatchмежду позициями xy и xytext. По умолчанию равно None, т.е. стрелка не рисуется.По историческим причинам существует два способа определения стрелок: "простой" и "сложный":
Простая стрелка:
Если arrowprops не содержит ключ 'arrowstyle', допустимые ключи:
Ключ
Описание
width
Ширина стрелки в точках
headwidth
Ширина основания стрелки в точках
headlength
Длина стрелки в точках
shrink
Доля от общей длины для уменьшения с обоих концов
?
Любое свойство
FancyArrowPatchСтрелка прикрепляется к краю текстового поля, точное положение (углы или центры) зависит от направления.
Сложная стрелка:
Используется, если в arrowprops задан ключ 'arrowstyle'.
Допустимые ключи — это следующие параметры
FancyArrowPatch:Ключ
Описание
arrowstyle
Стиль стрелки
connectionstyle
Стиль соединения
relpos
См. ниже; по умолчанию (0,5, 0,5)
patchA
По умолчанию — область текстового поля
patchB
По умолчанию — None
shrinkA
По умолчанию — 2 точки
shrinkB
По умолчанию — 2 точки
mutation_scale
По умолчанию — размер текста (в точках)
mutation_aspect
По умолчанию — 1
?
Любое свойство
FancyArrowPatchТочное начальное положение стрелки определяется параметром 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.8.4/api/_as_gen/matplotlib.pyplot.annotate.html