Jak tworzyć skumulowane wykresy słupkowe w matplotlib (z przykładami)


Skumulowany wykres słupkowy to rodzaj wykresu, który wykorzystuje słupki do przedstawienia częstotliwości różnych kategorii.

Wykres tego typu możemy stworzyć w Matplotlib za pomocą funkcji matplotlib.pyplot.bar() .

W tym samouczku pokazano, jak korzystać z tej funkcji w praktyce.

Utwórz podstawowy skumulowany wykres słupkowy

Poniższy kod pokazuje, jak utworzyć skumulowany wykres słupkowy przedstawiający całkowitą sprzedaż dwóch produktów w czterech różnych kwartałach sprzedaży:

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

Skumulowany wykres słupkowy w Matplotlib

Dodaj tytuł, etykiety i podpis

Możemy także dodać tytuł, etykiety, znaczniki i legendę, aby ułatwić czytanie wykresu:

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

Skumulowany wykres słupkowy w Matplotlib

Dostosuj kolory wykresów

Na koniec możemy dostosować kolory używane na wykresie za pomocą argumentu kolory() w 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 () 

Skumulowany wykres słupkowy Matplotlib z niestandardowymi kolorami

Pełną listę dostępnych kolorów znajdziesz w dokumentacji Matplotlib.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w Matplotlib:

Jak zmienić rozmiar czcionki na wykresie Matplotlib
Jak usunąć znaczniki z wykresów Matplotlib
Jak wyświetlić linie siatki na wykresach Matplotlib

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *