Шаг 31.
Язык Python. Визуализация данных.
Библиотека Matplotlib. Текстовые элементы графика. Аннотация

    На этом шаге мы начнем знакомиться с аннотацией.

    Инструмент Аннотация позволяет установить текстовый блок с заданным содержанием и стрелкой для указания на конкретное место на графике. Для создания аннотации используется функция annotate(), основными её аргументами являются:

text: str
Текст аннотации.

xy: (float, float)
Координаты места, на которое будет указывать стрелка.

xytext: (float, float), optional
Координаты расположения текстовой надписи.

xycoords: str
Система координат, в которой определяется расположение указателя.

textcoords: str
Система координат, в которой определяется расположение текстового блока.

arrowprops: diet, optional
Параметры отображения стрелки. Имена этих параметров (ключи словаря) являются параметрами конструктора объекта класса FancyArrowPatch.

    Ниже представлен пример кода, который демонстрирует работу с функцией annotation(): Ниже представлен пример кода, который демонстрирует работу с функцией annotation():

import matplotlib.pyplot as plt

x = list(range(-5, 6))
y = [i ** 2 for i in x]
plt.annotate('min', xy=(0, 0), xycoords='data', xytext=(0, 10),
             textcoords='data', arrowprops=dict(facecolor='g'))
plt.plot(x, y)

plt.show()
Архив с файлом можно взять здесь.

    Результат работы приложения изображен на рисунке 1.


Рис.1. Демонстрация работы функции annotation()

    Параметрам xycoords и textcoords может быть присвоено значение из таблицы 1.

Таблица 1. Значения параметров xycoords и textcoords
Значение Описание
'figure points' Начало координат — нижний левый угол фигуры (0, 0). Координаты задаются в точках
'figure pixels' Начало координат — нижний левый угол фигуры (0, 0). Координаты задаются в пикселях
'figure fraction' Начало координат — нижний левый угол фигуры (0, 0) при этом верхний правый угол — это точка (1, 1). Координаты задаются в долях от единицы.
'axes points' Начало координат — нижний левый угол поля графика (0, 0). Координаты задаются в точках
'axes pixels' Начало координат — нижний левый угол поля графика (0, 0). Координаты задаются в пикселях
'axes fraction' Начало координат — нижний левый угол поля графика (0, 0) при этом верхний правый угол поля — это точка (1, 1). Координаты задаются в долях от единицы
'data' Тип координатной системы: декартовая. Работа ведётся в пространстве поля графика.
'polar' Тип координатной системы: полярная. Работа ведётся в пространстве поля графика

    Для модификации внешнего вида надписи воспользуйтесь свойствами класса Text.

    На следующем шаге мы закончим изучение этого вопроса.




Предыдущий шаг Содержание Следующий шаг