Введение
Matplotlib - это библиотека визуализации данных на Python. Она предоставляет широкий спектр диаграмм и графиков, которые можно использовать для представления данных в различных формах. В этом лабе мы рассмотрим процесс создания вложенных gridspecs с использованием Matplotlib.
Советы по работе с ВМ
После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импортируем библиотеку Matplotlib
Первым шагом является импорт библиотеки Matplotlib. Мы также будем использовать модуль gridspec из Matplotlib.
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
Создаем фигуру и внешний gridspec
Следующим шагом является создание фигуры и внешнего gridspec. В этом примере мы создадим gridspec размером 1 на 2.
fig = plt.figure()
gs0 = gridspec.GridSpec(1, 2, figure=fig)
Создаем внутренний gridspec
Теперь мы создадим внутренний gridspec. Мы будем использовать метод GridSpecFromSubplotSpec, чтобы создать gridspec размером 3 на 3, который будет подграфиком внешнего gridspec.
gs00 = gridspec.GridSpecFromSubplotSpec(3, 3, subplot_spec=gs0[0])
Добавляем подграфики в внутренний gridspec
Теперь мы добавим подграфики в внутренний gridspec. Мы создадим три подграфика: ax1, ax2 и ax3.
ax1 = fig.add_subplot(gs00[:-1, :])
ax2 = fig.add_subplot(gs00[-1, :-1])
ax3 = fig.add_subplot(gs00[-1, -1])
Создаем еще один внутренний gridspec
Теперь мы создадим еще один внутренний gridspec. На этот раз мы будем использовать метод subgridspec, чтобы создать gridspec размером 3 на 3, который будет подграфиком второй колонки внешнего gridspec.
gs01 = gs0[1].subgridspec(3, 3)
Добавляем подграфики ко второму внутреннему gridspec
Теперь мы добавим подграфики ко второму внутреннему gridspec. Мы создадим три подграфика: ax4, ax5 и ax6.
ax4 = fig.add_subplot(gs01[:, :-1])
ax5 = fig.add_subplot(gs01[:-1, -1])
ax6 = fig.add_subplot(gs01[-1, -1])
Форматируем оси
Мы будем форматировать оси всех подграфиков с использованием функции format_axes. Эта функция добавит текстовую метку к каждому подграфику и удалит метки делений.
def format_axes(fig):
for i, ax in enumerate(fig.axes):
ax.text(0.5, 0.5, "ax%d" % (i+1), va="center", ha="center")
ax.tick_params(labelbottom=False, labelleft=False)
format_axes(fig)
Отображаем фигуру
Наконец, мы отобразим фигуру с использованием метода show.
plt.show()
Резюме
В этом практическом занятии мы узнали, как создавать вложенные gridspec с использованием Matplotlib. Мы создали внешний gridspec и два внутренних gridspec, чтобы создать сложный макет подграфиков. Мы также узнали, как форматировать оси подграфиков с использованием пользовательской функции.