Введение
В этом уроке мы узнаем, как использовать GridSpec для генерации вложенных графиков, контролировать относительные размеры вложенных графиков с помощью width_ratios и height_ratios, а также расстояние вокруг и между вложенными графиками с использованием параметров вложенных графиков (left, right, bottom, top, wspace и hspace).
Советы по работе с ВМ
После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений в Jupyter Notebook.
Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импорт библиотек
Начнем с импорта необходимых библиотек, которые это matplotlib.pyplot и GridSpec.
import matplotlib.pyplot as plt
from matplotlib.gridspec import GridSpec
Генерация вложенных графиков с использованием GridSpec
В этом шаге мы будем использовать GridSpec для генерации вложенных графиков. Создадим фигуру с 2 строками и 2 столбцами. Также укажем width_ratios и height_ratios, чтобы контролировать относительные размеры вложенных графиков.
fig = plt.figure()
gs = GridSpec(2, 2, width_ratios=[1, 2], height_ratios=[4, 1])
ax1 = fig.add_subplot(gs[0])
ax2 = fig.add_subplot(gs[1])
ax3 = fig.add_subplot(gs[2])
ax4 = fig.add_subplot(gs[3])
Управление расстоянием вокруг и между вложенными графиками
В этом шаге мы будем использовать GridSpec для управления расстоянием вокруг и между вложенными графиками. Создадим фигуру с 2 сетками (gridspec), каждая из которых имеет 3 строки и 3 столбца. Укажем параметры left, right, bottom, top, wspace и hspace для управления расстоянием.
fig = plt.figure()
gs1 = GridSpec(3, 3, left=0.05, right=0.48, wspace=0.05)
ax1 = fig.add_subplot(gs1[:-1, :])
ax2 = fig.add_subplot(gs1[-1, :-1])
ax3 = fig.add_subplot(gs1[-1, -1])
gs2 = GridSpec(3, 3, left=0.55, right=0.98, hspace=0.05)
ax4 = fig.add_subplot(gs2[:, :-1])
ax5 = fig.add_subplot(gs2[:-1, -1])
ax6 = fig.add_subplot(gs2[-1, -1])
Аннотация осей
В этом шаге мы будем аннотировать оси соответствующими номерами вложенных графиков.
def annotate_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)
annotate_axes(fig)
Отображение графиков
В этом шаге мы будем отображать графики.
plt.show()
Резюме
В этом уроке мы узнали, как использовать GridSpec для генерации вложенных графиков и управления расстоянием вокруг и между ними. Мы также узнали, как аннотировать оси соответствующими номерами вложенных графиков. Эти навыки будут полезны при создании сложных графиков и визуализаций.