Pandas: como usar groupby e plot (com exemplos)
Você pode usar os seguintes métodos para agrupar e plotar com um DataFrame do pandas:
Método 1: Agrupe e desenhe várias linhas em um único caminho
#define index column df. set_index ('day', inplace= True ) #group data by product and display sales as line chart df. groupby (' product ')[' sales ']. plot (legend= True )
Método 2: agrupar e desenhar linhas em subparcelas individuais
p.d. pivot_table ( df.reset_index (), index=' day ', columns=' product ', values=' sales ' ). plot (subplots= True )
O exemplo a seguir mostra como usar cada método na prática com o seguinte DataFrame do pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' day ': [1, 2, 3, 4, 5, 1, 2, 3, 4, 5], ' product ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'], ' sales ': [4, 7, 8, 12, 15, 8, 11, 14, 19, 20]}) #view DataFrame df day product sales 0 1 A 4 1 2 To 7 2 3 To 8 3 4 A 12 4 5 To 15 5 1 B 8 6 2 B 11 7 3 B 14 8 4 B 19 9 5 B 20
Método 1: Agrupe e desenhe várias linhas em um único caminho
O código a seguir mostra como agrupar o DataFrame pela variável “produto” e plotar as “vendas” de cada produto em um gráfico:
#define index column df. set_index (' day ', inplace= True ) #group data by product and display sales as line chart df. groupby (' product ')[' sales ']. plot (legend= True )
O eixo x mostra o dia, o eixo y mostra as vendas e cada linha individual mostra as vendas dos produtos individuais.
Método 2: agrupar e desenhar linhas em subparcelas individuais
O código a seguir mostra como agrupar o DataFrame pela variável “produto” e plotar as “vendas” de cada produto em subparcelas individuais:
p.d. pivot_table ( df.reset_index (), index=' day ', columns=' product ', values=' sales ' ). plot (subplots= True )
O primeiro gráfico mostra as vendas do produto A e o segundo gráfico mostra as vendas do produto B.
Observe que também podemos usar o argumento layout para especificar o layout dos subtraços.
Por exemplo, poderíamos especificar que as subparcelas estejam em uma grade com uma linha e duas colunas:
p.d. pivot_table ( df.reset_index (), index=' day ', columns=' product ', values=' sales ' ). plot (subplots= True , layout=(1,2))
Recursos adicionais
Os tutoriais a seguir explicam como criar outras visualizações comuns em pandas:
Como criar um boxplot a partir do Pandas DataFrame
Como criar um gráfico de pizza a partir do Pandas DataFrame
Como criar um histograma a partir do Pandas DataFrame