Pandas Colunas Múltiplas no Gráfico de Barras com Matplotlib

Suraj Joshi 30 janeiro 2023
  1. Gráfico de barras de múltiplas colunas para cada observação no gráfico de barras único
  2. Gráfico de barras de empilhamento de múltiplas colunas para cada observação no gráfico de barras único
Pandas Colunas Múltiplas no Gráfico de Barras com Matplotlib

Neste tutorial, vamos introduzir como podemos traçar múltiplas colunas num gráfico de barras utilizando o método plot() do objecto DataFrame.

import pandas as pd

data = [
    ["Rudra", 23, 156, 70],
    ["Nayan", 20, 136, 60],
    ["Alok", 15, 100, 35],
    ["Prince", 30, 150, 85],
]

df = pd.DataFrame(data, columns=["Name", "Age", "Height(cm)", "Weight(kg)"])
print(df)

Resultado:

     Name  Age  Height(cm)  Weight(kg)
0   Rudra   23         156          70
1   Nayan   20         136          60
2    Alok   15         100          35
3  Prince   30         150          85

Utilizaremos o método DataFrame df para construir gráficos de barras. Precisamos de traçar a idade, altura e peso de cada pessoa no DataFrame num único gráfico de barras.

Gráfico de barras de múltiplas colunas para cada observação no gráfico de barras único

import pandas as pd
import matplotlib.pyplot as plt

data = [
    ["Rudra", 23, 156, 70],
    ["Nayan", 20, 136, 60],
    ["Alok", 15, 100, 35],
    ["Prince", 30, 150, 85],
]

df = pd.DataFrame(data, columns=["Name", "Age", "Height(cm)", "Weight(kg)"])
df.plot(x="Name", y=["Age", "Height(cm)", "Weight(kg)"], kind="bar", figsize=(9, 8))
plt.show()

Resultado:

Gráfico de barras de múltiplas colunas para cada observação no gráfico de barras único

Gera um gráfico de barras para Age, Height e Weight para cada pessoa no campo de dados df, utilizando o método plot() do objecto df. Passamos uma lista de todas as colunas a serem plotadas no gráfico de barras como parâmetro y no método, e kind="bar" irá produzir um gráfico de barras para o df. O parâmetro x será variado ao longo do eixo X.

Gráfico de barras de empilhamento de múltiplas colunas para cada observação no gráfico de barras único

import pandas as pd
import matplotlib.pyplot as plt

employees = ["Rudra", "Alok", "Prince", "Nayan", "Reman"]
earnings = {
    "January": [10, 20, 15, 18, 14],
    "February": [20, 13, 10, 18, 15],
    "March": [20, 20, 10, 15, 18],
}

df = pd.DataFrame(earnings, index=employees)

df.plot(kind="bar", stacked=True, figsize=(10, 8))
plt.legend(loc="lower left", bbox_to_anchor=(0.8, 1.0))
plt.show()

Resultado:

Gráfico de barras de empilhamento de múltiplas colunas para cada observação no gráfico de barras único

Exibe o gráfico de barras empilhando o valor de uma coluna sobre a outra para cada índice no DataFrame.

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn