Направление подписей делений в Matplotlib

Beginner

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

Введение

В этом практическом занятии вы узнаете, как установить направление подписей делений на графике в Matplotlib. Также вы научитесь настраивать направление подписей делений для обеих осей: оси x и оси y.

Советы по работе с ВМ

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

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

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

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

Сначала нам нужно импортировать необходимые модули для создания нашего графика. Будем использовать Matplotlib и AxisArtist из mpl_toolkits.

import matplotlib.pyplot as plt
import mpl_toolkits.axisartist.axislines as axislines

Создаем функцию для настройки осей

Мы создадим функцию для настройки наших осей с требуемыми подписями делений.

def setup_axes(fig, pos):
    ax = fig.add_subplot(pos, axes_class=axislines.Axes)
    ax.set_yticks([0.2, 0.8])
    ax.set_xticks([0.2, 0.8])
    return ax

Настраиваем направление подписей делений

Мы создадим три вложенных графика, чтобы показать разные способы настройки направления подписей делений.

Подписи делений, направленные в наружную сторону

В этом шаге мы создадим вложенный график с подписами делений, направленными в наружную сторону.

fig = plt.figure(figsize=(6, 3))
fig.subplots_adjust(bottom=0.2)

ax = setup_axes(fig, 131)
for axis in ax.axis.values():
    axis.major_ticks.set_tick_out(True)

Настраиваемое направление подписей делений

В этом шаге мы создадим вложенный график с настраиваемым направлением подписей делений.

ax = setup_axes(fig, 132)
ax.axis["left"].set_axis_direction("right")
ax.axis["bottom"].set_axis_direction("top")
ax.axis["right"].set_axis_direction("left")
ax.axis["top"].set_axis_direction("bottom")

Подписи делений, направленные в наружную сторону с одной стороны

В этом шаге мы создадим вложенный график с подписами делений, направленными в наружную сторону с одной стороны.

ax = setup_axes(fig, 133)
ax.axis["left"].set_axis_direction("right")
ax.axis[:].major_ticks.set_tick_out(True)

ax.axis["left"].label.set_text("Long Label Left")
ax.axis["bottom"].label.set_text("Label Bottom")
ax.axis["right"].label.set_text("Long Label Right")
ax.axis["right"].label.set_visible(True)
ax.axis["left"].label.set_pad(0)
ax.axis["bottom"].label.set_pad(10)

plt.show()

Резюме

В этом практическом занятии мы узнали, как настраивать направление подписей делений в графике Matplotlib с использованием AxisArtist. С помощью методов set_axis_direction() и major_ticks.set_tick_out() мы можем создавать вложенные графики с разными направлениями подписей делений.