Gráfico de barras
01.Quando usar um gráfico de barras
Usamos um gráfico de barra quando precisamos comparar quantidades de categorias diferentes.
02.Preparando os dados
02.a.Importando as bibliotecas necessárias
1#Importando as bibliotecas necessárias
2import pandas as pd
3import matplotlib.pyplot as plt
02.b.Criando o DataFrame
Para este grpafico usaremos uma base de dados (“olist_order_payments_dataset.xlsx”) sobre pagamentos de pedidos da empresa de varejo online Olist.
1#Criando o DataFrame
2df = pd.read_excel("/content/oilist_order_payments_dataset.xlsx")
1#Visualizandoo DataFrame
2df.head()
Este é o resultado:
1#Verificando o formato do DataFrame
2df.shape
Este é o resultado:
>>> (102698, 5)
Note
Por uma questão de didática fizemos pequenas alterações no dataset que retiramos do site da Kaggle.
03.Construindo um gráfico de barras
1#Criar o objeto figure e axes
2fig, ax_01 = plt.subplots()
1#Escolher os dados e somá-los para plotar o gráfico
2df.payment_type.value_counts().sort_values(ascending=False).plot(kind="bar", ax=ax_01)
1#Customizando o Axes
2ax_01.set_title("Formas de Pagamento")
3ax_01.set_xlabel("Categorias de Pagamento")
4ax_01.set_ylabel("Quantidade vendida em R$")
1#Exibindo o gráfico
2plt.show()
Este é o resultado:
Note
Usar o método e os parâmetros
figsize(altura,largura)se necessário.Repare que o gráfico de barras nos mostra a soma de cada categoria e por este motivo usamos o método value_counts() para fazer a soma de cada categoria.
03.a.Invertendo a ordem das barras
Caso queira inverter a ordem das barras para a de maior valor para a de menor valor (ou vice e versa):
basta usar o método .sort_values(ascending=True) e usar o parâmetro ascending.
03.a.i.Valores crescentes
1df.Nome_Da_Variavel.value_counts().sort_values(ascending=True).plot(kind='bar', ax=ax_01)
03.a.ii.Valores decrescentes
1df.Nome_Da_Variavel.value_counts().sort_values(ascending=False).plot(kind='bar', ax=ax_01)
03.b.Barras horizontais
Para realizarmos um gráfico de barra horizontal, fazemos exatamente os mesmos passos para construir um gráfico de barras vertical, apenas alteramos o valor do parâmetro kind para kind='barh'.
df.nome_variavel.value_counts().plot(kind=’barh’, ax=ax_01)
1#Criar o objeto figure e axes
2fig, ax_01 = plt.subplots()
1#Escolher os dados e somá-los para plotar o gráfico de barras horizontais
2df.payment_type.value_counts().sort_values(ascending=False).plot(kind="barh", ax=ax_01)
1#Customizando o Axes
2ax_01.set_title("Formas de Pagamento")
3ax_01.set_xlabel("Quantidade vendida em R$")
4ax_01.set_ylabel("Categorias de Pagamento")
1#Exibindo o gráfico
2plt.show()
Este é o resultado:
Note
Lembrar de adequar a legenda dos eixos X e Y.