Введение
В этом руководстве вы узнаете, как создавать текстовые и стрелковые аннотации на основе графика в миллиметрах в Python Matplotlib.
Советы по работе с ВМ
После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Ноутбук и приступить к практике с Jupyter Notebook.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы столкнетесь с проблемами при обучении, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импортируем необходимые библиотеки и определяем единицы измерения
В этом шаге мы импортируем необходимые библиотеки и определяем единицу измерения, которую будем использовать для нашего графика.
from basic_units import cm
import matplotlib.pyplot as plt
Создаем график
В этом шаге мы создадим график с использованием функции subplots() и сохраним его в переменных fig и ax.
fig, ax = plt.subplots()
Добавляем текстовую аннотацию
В этом шаге мы добавим текстовую аннотацию на график с использованием функции annotate(). Мы укажем позицию аннотации и текст, который будет отображаться.
ax.annotate("Note 01", [0.5*cm, 0.5*cm])
Добавляем стрелковую аннотацию с единицами измерения для xy и текста
В этом шаге мы добавим стрелковую аннотацию на график с использованием функции annotate(). Мы укажем позицию стрелки, текст, который будет отображаться, и свойства стрелки. Также мы укажем единицы измерения для позиции и текста.
ax.annotate('local max', xy=(3*cm, 1*cm), xycoords='data',
xytext=(0.8*cm, 0.95*cm), textcoords='data',
arrowprops=dict(facecolor='black', shrink=0.05),
horizontalalignment='right', verticalalignment='top')
Добавляем стрелковую аннотацию с смешанными единицами измерения
В этом шаге мы добавим еще одну стрелковую аннотацию на график с использованием функции annotate(). Мы укажем позицию стрелки, текст, который будет отображаться, и свойства стрелки. Также мы смешаем единицы измерения для позиции и используем долю оси для текста.
ax.annotate('local max', xy=(3*cm, 1*cm), xycoords='data',
xytext=(0.8, 0.95), textcoords='axes fraction',
arrowprops=dict(facecolor='black', shrink=0.05),
horizontalalignment='right', verticalalignment='top')
Задаем пределы графика и отображаем его
В этом шаге мы зададим пределы графика и отобразим его с использованием функций set_xlim(), set_ylim() и show().
ax.set_xlim(0*cm, 4*cm)
ax.set_ylim(0*cm, 4*cm)
plt.show()
Резюме
В этом руководстве показано, как создавать текстовые и стрелковые аннотации на графике в сантиметровом масштабе с использованием Matplotlib в Python. Мы импортировали необходимые библиотеки, определили единицы измерения, создали график, добавили текстовые и стрелковые аннотации, установили пределы графика и отобразили его.