Центрированные оси координат с стрелочками

Beginner

This tutorial is from open-source community. Access the source code

Введение

Matplotlib - это мощный инструмент для визуализации данных в Python. В этом руководстве вы узнаете, как создать график с центрированными осями и стрелками с использованием Matplotlib.

Советы по виртуальной машине (VM)

После запуска виртуальной машины нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится. Проверка операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если у вас возникнут проблемы во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импорт необходимых библиотек

Перед созданием графика вам нужно импортировать необходимые библиотеки. В данном случае вам понадобятся Matplotlib и NumPy.

import matplotlib.pyplot as plt
import numpy as np

Создание объекта фигуры и осей

Далее вам нужно создать объект фигуры и осей с помощью функции subplots(). Эта функция возвращает кортеж (figure, axis), который вы можете использовать для изменения графика.

fig, ax = plt.subplots()

Перемещение осей координат (spines)

По умолчанию оси координат (spines) рисуются по краям графика. В данном случае вы хотите переместить левую и нижнюю оси координат в центр графика.

ax.spines[["left", "bottom"]].set_position(("data", 0))

Скрытие ненужных осей координат (spines)

Вы также хотите скрыть верхнюю и правую оси координат (spines), так как они не нужны.

ax.spines[["top", "right"]].set_visible(False)

Рисование стрелок в конце осей координат (spines)

Для указания направления осей вы можете нарисовать стрелочки в конце осей координат (spines).

ax.plot(1, 0, ">k", transform=ax.get_yaxis_transform(), clip_on=False)
ax.plot(0, 1, "^k", transform=ax.get_xaxis_transform(), clip_on=False)

Добавление данных на график

Наконец, вы можете добавить некоторые данные на график для их визуализации. В данном случае вы можете использовать функцию plot() для построения синуса.

x = np.linspace(-0.5, 1., 100)
ax.plot(x, np.sin(x*np.pi))

Резюме

В этом руководстве вы узнали, как создать график с центрированными осями координат (spines) и стрелочками с использованием Matplotlib. Вы научились перемещать оси координат в центр графика, скрывать ненужные оси координат и рисовать стрелочки в конце осей координат. Вы также узнали, как добавить данные на график и визуализировать их.