Введение
В визуализации данных метки делений играют важную роль в передаче информации зрителям. Иногда мы можем потребовать настроить выравнивание меток делений, чтобы сделать их более читаемыми или избежать наложений. В этом практическом занятии мы узнаем, как использовать Matplotlib для настройки выравнивания меток делений.
Советы по работе с ВМ
После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импортируем Matplotlib и AxisArtist
Сначала нам нужно импортировать Matplotlib и AxisArtist, который предоставляет дополнительные инструменты для создания пользовательских осей.
import matplotlib.pyplot as plt
import mpl_toolkits.axisartist as axisartist
Определяем функцию для настройки осей
Для упрощения кода можно определить функцию, которая принимает объект фигуры и позицию в качестве входных данных и возвращает объект оси с пользовательскими метками делений.
def setup_axes(fig, pos):
ax = fig.add_subplot(pos, axes_class=axisartist.Axes)
ax.set_yticks([0.2, 0.8], labels=["short", "loooong"])
ax.set_xticks([0.2, 0.8], labels=[r"$\frac{1}{2}\pi$", r"$\pi$"])
return ax
Создаем фигуру и добавляем подграфики
Далее мы можем создать объект фигуры и добавить три подграфика с использованием функции setup_axes.
fig = plt.figure(figsize=(3, 5))
fig.subplots_adjust(left=0.5, hspace=0.7)
ax = setup_axes(fig, 311)
ax.set_ylabel("ha=right")
ax.set_xlabel("va=baseline")
ax = setup_axes(fig, 312)
ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")
ax.set_ylabel("ha=center")
ax.set_xlabel("va=top")
ax = setup_axes(fig, 313)
ax.axis["left"].major_ticklabels.set_ha("left")
ax.axis["bottom"].major_ticklabels.set_va("bottom")
ax.set_ylabel("ha=left")
ax.set_xlabel("va=bottom")
Настраиваем выравнивание меток делений
Наконец, мы можем использовать методы set_ha и set_va для настройки горизонтального и вертикального выравнивания меток делений.
ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")
Отображаем график
Для отображения графика мы можем использовать метод show.
plt.show()
Резюме
В этом практическом занятии мы узнали, как использовать Matplotlib и AxisArtist для настройки выравнивания меток делений. При настройке горизонтального и вертикального выравнивания меток делений мы можем повысить читаемость и ясность наших визуализаций данных.