Pandas: como plotar vários dataframes em subparcelas


Você pode usar a seguinte sintaxe básica para plotar vários DataFrames do pandas em subtramas:

 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])

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: plotando vários DataFrames Pandas em subparcelas

Digamos que temos quatro DataFrames panda que contêm informações sobre vendas e devoluções em quatro lojas de varejo diferentes:

 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]})

Podemos usar a seguinte sintaxe para plotar cada um desses DataFrames em uma subtrama com um layout de 2 linhas e 2 colunas:

 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]) 

subtramas do panda

Cada um dos quatro DataFrames é exibido em uma subtrama.

Observe que usamos o argumento axes para especificar onde cada DataFrame deve ser colocado.

Por exemplo, o DataFrame chamado df1 foi colocado na posição com um valor de índice de linha 0 e um valor de índice de coluna 0 (por exemplo, o subplot no canto superior esquerdo).

Observe também que você pode alterar o layout das subtramas usando os argumentos nrows e ncols .

Por exemplo, o código a seguir mostra como organizar subtramas em quatro linhas e uma coluna:

 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]) 

As subparcelas agora estão organizadas em um layout com quatro linhas e uma coluna.

Observe que se você deseja que as subparcelas tenham as mesmas escalas nos eixos y e x, você pode usar os argumentos sharey e sharex .

Por exemplo, o código a seguir mostra como usar o argumento sharey para forçar todas as subtramas a terem a mesma escala no eixo 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]) 

Observe que o eixo Y de cada subtrama agora varia de 0 a 20.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras operações comuns em pandas:

Como criar um gráfico de pizza a partir do Pandas DataFrame
Como criar uma nuvem de pontos a partir do Pandas DataFrame
Como criar um histograma a partir do Pandas DataFrame

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *