Como criar gráficos de barras empilhadas no matplotlib (com exemplos)


Um gráfico de barras empilhadas é um tipo de gráfico que usa barras para exibir frequências de diferentes categorias.

Podemos criar este tipo de gráfico no Matplotlib usando a função matplotlib.pyplot.bar() .

Este tutorial mostra como usar esta função na prática.

Crie um gráfico de barras empilhadas básico

O código a seguir mostra como criar um gráfico de barras empilhadas para exibir o total de vendas de dois produtos em quatro trimestres de vendas diferentes:

 import numpy as np
import matplotlib.pyplot as plt

#createdata
quarter = ['Q1', 'Q2', 'Q3', 'Q4']
product_A = [14, 17, 12, 9]
product_B = [7, 15, 24, 18]

#define chart parameters
N = 4 
barWidth = .5
xloc = np. orange (N)

#display stacked bar chart
p1 = plt. bar (xloc, product_A, width=barWidth)
p2 = plt. bar (xloc, product_B, bottom=product_A, width=barWidth)
plt. show ()

Gráfico de barras empilhadas em Matplotlib

Adicione um título, rótulos e legenda

Também podemos adicionar um título, rótulos, marcas de escala e legenda para facilitar a leitura do gráfico:

 import numpy as np
import matplotlib.pyplot as plt

#create data for two teams
quarter = ['Q1', 'Q2', 'Q3', 'Q4']
product_A = [14, 17, 12, 9]
product_B = [7, 15, 24, 18]

#define chart parameters
N = 4 
barWidth = .5
xloc = np. orange (N)

#create stacked bar chart
p1 = plt. bar (xloc, product_A, width=barWidth)
p2 = plt. bar (xloc, product_B, bottom=product_A, width=barWidth)

#add labels, title, tick marks, and legend
plt. ylabel ('Sales')
plt. xlabel ('Quarter')
plt. title ('Sales by Product & Quarter')
plt. xticks (xloc, ('Q1', 'Q2', 'Q3', 'Q4'))
plt. yticks (np. arange (0, 41, 5))
plt. legend ((p1[0], p2[0]), ('A', 'B'))

#displaychart
plt. show () 

Gráfico de barras empilhadas em Matplotlib

Personalize as cores do gráfico

Finalmente, podemos personalizar as cores usadas no gráfico com o argumento cores() em plt.bar() :

 import numpy as np
import matplotlib.pyplot as plt

#create data for two teams
quarter = ['Q1', 'Q2', 'Q3', 'Q4']
product_A = [14, 17, 12, 9]
product_B = [7, 15, 24, 18]

#define chart parameters
N = 4 
barWidth = .5
xloc = np. orange (N)

#create stacked bar chart
p1 = plt. bar (xloc, product_A, width=barWidth, color=' springgreen ')
p2 = plt. bar (xloc, product_B, bottom=product_A, width=barWidth, color=' coral ')

#add labels, title, tick marks, and legend
plt. ylabel ('Sales')
plt. xlabel ('Quarter')
plt. title ('Sales by Product & Quarter')
plt. xticks (xloc, ('Q1', 'Q2', 'Q3', 'Q4'))
plt. yticks (np. arange (0, 41, 5))
plt. legend ((p1[0], p2[0]), ('A', 'B'))

#displaychart
plt. show () 

Gráfico de barras empilhadas Matplotlib com cores personalizadas

Você pode encontrar uma lista completa de cores disponíveis na documentação do Matplotlib.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns no Matplotlib:

Como alterar o tamanho da fonte em um gráfico Matplotlib
Como remover carrapatos de gráficos Matplotlib
Como mostrar linhas de grade em gráficos Matplotlib

Add a Comment

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