В Matplotlib, что означает этот аргумент в fig.add_subplot (111)?

Иногда я сталкиваюсь с таким кодом:

import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [1, 4, 9, 16, 25] fig = plt.figure() fig.add_subplot(111) plt.scatter(x, y) plt.show() 

Что производит:

Пример графика, созданного включенным кодом

Я читал документацию как сумасшедший, но я не могу найти объяснения для 111 . иногда я вижу 212 .

Что означает аргумент fig.add_subplot() ?

3 Solutions collect form web for “В Matplotlib, что означает этот аргумент в fig.add_subplot (111)?”

Это параметры подсеточной сетки, закодированные как одно целое. Например, «111» означает «сетка 1×1, первый подзаговор» и «234» означает «сетка 2×3, четвертый подзаговор».

Альтернативной формой для add_subplot(111) является add_subplot(1, 1, 1) .

Я думаю, что это лучше всего объяснить следующей картиной:

введите описание изображения здесь

Чтобы инициализировать вышеизложенное, нужно ввести:

 import matplotlib.pyplot as plt fig = plt.figure() fig.add_subplot(221) #top left fig.add_subplot(222) #top right fig.add_subplot(223) #bottom left fig.add_subplot(224) #bottom right plt.show() 

EDIT: Дополнительная информация

Следующие комбинации создают асимметричные устройства подзаголовков.

 subplot(2,2,[1 3]) subplot(2,2,2) subplot(2,2,4) 

Пример 2.

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

 subplot(2,2,1:2) subplot(2,2,3) subplot(2,2,4) 

введите описание изображения здесь

Ссылка здесь

Ответ от Constantin – это место, но для большего фона это поведение унаследовано от Matlab.

Поведение Matlab объясняется в разделе Figure Setup – Отображение нескольких графиков на рисунок в документации Matlab.

subplot (m, n, i) разбивает окно фигуры на матрицу m-by-n небольших подсетей и выбирает ее подзаголовок для текущего графика. Графики пронумерованы вдоль верхнего ряда окна фигуры, затем второго ряда и т. Д.

Python - лучший язык программирования в мире.