Pandas: как построить несколько dataframes на подзаголовках


Вы можете использовать следующий базовый синтаксис для построения нескольких кадров данных pandas в подграфиках:

 import matplotlib. pyplot as plt

#define subplot layout
fig, axes = plt. subplots (nrows= 2 , ncols= 2 )

#add DataFrames to subplots
df1. plot (ax=axes[0,0])
df2. plot (ax=axes[0,1])
df3. plot (ax=axes[1,0])
df4. plot (ax=axes[1,1])

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: построение нескольких фреймов данных Pandas на подграфиках

Допустим, у нас есть четыре DataFrame panda, которые содержат информацию о продажах и возвратах в четырех разных розничных магазинах:

 import pandas as pd

#create four DataFrames
df1 = pd. DataFrame ({' sales ': [2, 5, 5, 7, 9, 13, 15, 17, 22, 24],
                    ' returns ': [1, 2, 3, 4, 5, 6, 7, 8, 7, 5]})

df2 = pd. DataFrame ({' sales ': [2, 5, 11, 18, 15, 15, 14, 9, 6, 7],
                    ' returns ': [1, 2, 0, 2, 2, 4, 5, 4, 2, 1]})

df3 = pd. DataFrame ({' sales ': [6, 8, 8, 7, 8, 9, 10, 7, 8, 12],
                    ' returns ': [1,0, 1, 1, 1, 2, 3, 2, 1, 3]})

df4 = pd. DataFrame ({' sales ': [10, 7, 7, 6, 7, 6, 4, 3, 3, 2],
                    ' returns ': [4, 4, 3, 3, 2, 3, 2, 1, 1, 0]})

Мы можем использовать следующий синтаксис для построения каждого из этих DataFrames в подграфике, имеющем макет из 2 строк и 2 столбцов:

 import matplotlib. pyplot as plt

#define subplot layout
fig, axes = plt. subplots (nrows= 2 , ncols= 2 )

#add DataFrames to subplots
df1. plot (ax=axes[0,0])
df2. plot (ax=axes[0,1])
df3. plot (ax=axes[1,0])
df4. plot (ax=axes[1,1]) 

панда

Каждый из четырех DataFrames отображается в подграфике.

Обратите внимание, что мы использовали аргумент axes , чтобы указать, где должен быть размещен каждый DataFrame.

Например, DataFrame с именем df1 был помещен в позицию со значением индекса строки, равным 0 , и значением индекса столбца, равным 0 (например, подграфик в верхнем левом углу).

Также обратите внимание, что вы можете изменить макет подграфиков, используя аргументы nrows и ncols .

Например, следующий код показывает, как организовать подграфики в четыре строки и один столбец:

 import matplotlib. pyplot as plt

#define subplot layout
fig, axes = plt. subplots (nrows= 4 , ncols= 1 )

#add DataFrames to subplots
df1. plot (ax=axes[0])
df2. plot (ax=axes[1])
df3. plot (ax=axes[2])
df4. plot (ax=axes[3]) 

Подграфики теперь расположены в макете с четырьмя строками и одним столбцом.

Обратите внимание: если вы хотите, чтобы подграфики имели одинаковые масштабы по осям y и x, вы можете использовать аргументыsharey иsharex .

Например, следующий код показывает, как использовать аргументshary , чтобы все подграфики имели одинаковый масштаб по оси Y:

 import matplotlib. pyplot as plt

#define subplot layout, force subplots to have same y-axis scale
fig, axes = plt. subplots (nrows= 4 , ncols= 1 , sharey= True )

#add DataFrames to subplots
df1. plot (ax=axes[0])
df2. plot (ax=axes[1])
df3. plot (ax=axes[2])
df4. plot (ax=axes[3]) 

Обратите внимание, что ось Y каждого подграфика теперь находится в диапазоне от 0 до 20.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:

Как создать круговую диаграмму из Pandas DataFrame
Как создать облако точек из Pandas DataFrame
Как создать гистограмму из Pandas DataFrame

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *