Рубрики
Без рубрики

Matplotlib gridspec: Подробная иллюстрация

класс matplotlib.gridspec.GridSpec используется для указания геометрии сетки для размещения подзаголовка. Нам нужно установить количество строк и столбцов сетки

Автор оригинала: Team Python Pool.

Matplotlib gridspec: Подробная иллюстрация

Здравствуйте, программисты!! В этой статье мы узнаем о matplotlib gridspec. Мы увидим несколько примеров, чтобы понять ясную концепцию по упомянутой теме. Без дальнейших церемоний давайте сразу перейдем к теме.

Что такое matplotlib gridspec?

Класс matplotlib.gridspec.GridSpec используется для указания геометрии сетки для размещения подзаголовка. Нам нужно установить количество строк и столбцов сетки.

Синтаксис:

class matplotlib.gridspec.GridSpec(nrows, ncols,,,,,,,,,)

Параметры:

  • nrows: количество строк в сетке
  • ncols: количество столбцов в сетке
  • figure: для рисования фигур
  • left, right, top, bottom: для определения экстента подзаголовков как доли ширины или высоты фигуры
  • hspace: для резервирования пространства высоты между подзаголовками
  • width_ratios: представляет отношения ширины столбцов
  • height_ratios: представляет отношения ширины строк

Методы в классе matplotlib gridspec:

get_subplot_params(self,):

Эта функция возвращает словарь параметров макета подзаголовка.

tight_layout(self, figure,,.08,,,):

Он используется для придания определенного заполнения для настройки подзаголовков.

Иллюстрированные примеры для Matplotlib gridspec:

Давайте теперь рассмотрим несколько примеров для более ясной концепции.

import matplotlib
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

fig,.subplots(ncols=3,,)
Иллюстрированные примеры для Matplotlib gridspec
Иллюстрированные примеры для Matplotlib gridspec

Выход

В этом примере мы не использовали matplotlib gridspec. Мы создали подзаголовки с размерами фигуры 3×3. Теперь мы создадим ту же фигуру с помощью gridspec.

import matplotlib
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
.figure(constrained_layout=True).GridSpec(ncols=3,,).add_subplot(spec[0, 0]).add_subplot(spec[0, 1]).add_subplot(spec[0, 2]).add_subplot(spec[1, 0]).add_subplot(spec[1, 1]).add_subplot(spec[1, 2]).add_subplot(spec[2, 0]).add_subplot(spec[2, 1]).add_subplot(spec[2, 2])
matplotlib gridspec для достижения
matplotlib gridspec для достижения

Выход

Как видите, здесь мы создали одну и ту же фигуру. Однако мы использовали matplotlib gridspec для достижения желаемого результата. Мы определили размер сетки как 3×3. Затем мы определили 9 подзаголовков в разных осях, чтобы получить рисунок, показанный выше.

Это был всего лишь простой пример, чтобы увидеть, как работает gridspec. Он в основном используется, когда мы создаем подзаголовки, охватывающие строки и столбцы.

import matplotlib
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
.figure(constrained_layout=True).add_gridspec(3, 3).add_subplot(gs[0, :1]).add_subplot(gs[1, :-1]).add_subplot(gs[1:, -1]).add_subplot(gs[-1, -2])
как работает gridspec
как работает gridspec

Выход

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

GridSpec использование SubplotSpec:

Это используется для указания местоположения подзаголовка в gridspec.

Синтаксис:

matplotlib.gridspec.SubplotSpec(gridspecnum1,)

Параметры:

  • gridspec: GridSpec, на который ссылается подзаголовок.
  • num1, num2: Подзаголовок будет занимать num 1-ю ячейку данного gridspec. Если указан num2, то подзаголовок будет располагаться между num1-й и num2-й ячейками включительно.
  • Подзаголовок будет занимать num 1-ю ячейку данного gridspec.
  • Если указан num2, то подзаголовок будет охватывать промежуток между num 1-й и num2-й ячейками включительно.
matplotlib GridSpec использование SubplotSpec
matplotlib GridSpec использование SubplotSpec

Выход

В этом примере мы настроили макет нашей фигуры с помощью subplotspec(). Параметр этой функции определяет ось данного подзаголовка.

Matplotlib gridspec общие оси:

import matplotlib
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
fig,.subplots(ncols=3,)

fig.suptitle('Shared y-axis',)

fig.tight_layout()


plt.show()
Matplotlib gridspec общие оси
Matplotlib gridspec общие оси

Выход

В этом примере мы установили параметр ‘share’ как “True”. В результате на рисунке графики имеют общую ось y, а затем использовали метод tight_layout (), чтобы дать конкретное заполнение для настройки подзаголовков.

Matplotlib gridspec imshow:

import matplotlib.pyplot as plt
import numpy as np
.random.rand(15,15)
fig,.subplots(3, 2)

axes[0, 0].imshow(data)
axes[1, 0].imshow(data)
axes[2, 0].imshow(data)


axes[0, 1].imshow(data)
axes[1, 1].imshow(data)
axes[2, 1].imshow(data)

plt.setp(axes, xticks=[], yticks=[])
plt.show()
imshow
imshow

Выход

Как вы можете видеть, в этом примере мы использовали метод imshow() для отображения изображений на разных осях. Мы используем метод random.rand() для создания 15×15 href=”https://en.wikipedia.org/wiki/Matrix_(математика)”>матрица случайной величины. Наконец, мы используем метод imshow() для отображения изображений на разных осях. href=”https://en.wikipedia.org/wiki/Matrix_(математика)”>матрица случайной величины. Наконец, мы используем метод imshow() для отображения изображений на разных осях.

Соотношение Matplotlib gridspec:

Для этого доступны два параметра:

  • width_ratios: Соотношение ширины колонн
  • height_ratios: Соотношение высот строк
Соотношение Matplotlib gridspec
Соотношение Matplotlib gridspec

Выход

В этом примере мы использовали параметры width_ratios и height_ratios для указания высоты и ширины различных подзаголовков на рисунке.

Вывод: Matplotlib Gridspec

На этом мы заканчиваем нашу статью. Я надеюсь, что концепция gridspec была очищена от этой статьи.

Однако, если у вас есть какие-либо сомнения или вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь помочь вам как можно скорее.

Счастливого Пифонирования!