Wykresy kołowe Matplotlib
Tworzenie wykresów kołowych
Dzięki Pyplot możesz użyć pie()
funkcji do rysowania wykresów kołowych:
Przykład
Prosty wykres kołowy:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
plt.pie(y)
plt.show()
Wynik:
Jak widać, wykres kołowy rysuje po jednym kawałku (nazywanym klinem) dla każdej wartości w tablicy (w tym przypadku [35, 25, 25, 15]).
Domyślnie kreślenie pierwszego klina rozpoczyna się od osi x i przesuwa się w kierunku przeciwnym do ruchu wskazówek zegara :
Uwaga: Rozmiar każdego klina określa się, porównując wartość ze wszystkimi innymi wartościami, korzystając z poniższego wzoru:
Wartość podzielona przez sumę wszystkich wartości:x/sum(x)
Etykiety
Dodaj etykiety do wykresu kołowego z label
parametrem.
Parametr label
musi być tablicą z jedną etykietą dla każdego klina:
Przykład
Prosty wykres kołowy:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y,
labels = mylabels)
plt.show()
Wynik:
Kąt początkowy
Jak wspomniano, domyślny kąt początkowy znajduje się na osi x, ale można zmienić kąt początkowy, określając
startangle
parametr.
Parametr startangle
określany jest kątem w stopniach, domyślny kąt to 0:
Przykład
Rozpocznij pierwszy klin pod kątem 90 stopni:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y,
labels = mylabels, startangle = 90)
plt.show()
Wynik:
Eksplodować
Może chcesz, żeby jeden z koturnów się wyróżniał? Parametr
explode
pozwala to zrobić.
Parametr explode
, jeśli jest określony, a nie None
, musi być tablicą z jedną wartością dla każdego klina.
Każda wartość określa, jak daleko od środka wyświetlany jest każdy klin:
Przykład
Wyciągnij klin „Jabłka” 0,2 od środka tortu:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
myexplode = [0.2, 0, 0, 0]
plt.pie(y,
labels = mylabels, explode = myexplode)
plt.show()
Wynik:
Cień
Dodaj cień do wykresu kołowego, ustawiając
shadows
parametr na True
:
Przykład
Dodaj cień:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
myexplode = [0.2, 0, 0, 0]
plt.pie(y,
labels = mylabels, explode = myexplode, shadow = True)
plt.show()
Wynik:
Zabarwienie
Za pomocą parametru możesz ustawić kolor każdego klina colors
.
Parametr colors
, jeśli został określony, musi być tablicą z jedną wartością dla każdego klina:
Przykład
Określ nowy kolor dla każdego klina:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
mycolors = ["black", "hotpink", "b", "#4CAF50"]
plt.pie(y, labels =
mylabels, colors = mycolors)
plt.show()
Wynik:
Możesz użyć szesnastkowych wartości kolorów , dowolnych 140 obsługiwanych nazw kolorów lub jednego z tych skrótów:
'r'
- Czerwony
'g'
- Zielony
'b'
- Niebieski
'c'
- Cyjan
'm'
- Magenta
'y'
- Żółty
'k'
- Czarny
'w'
- Biały
Legenda
Aby dodać listę wyjaśnień dla każdego klina, użyj legend()
funkcji:
Przykład
Dodaj legendę:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y, labels = mylabels)
plt.legend()
plt.show()
Wynik:
Legenda z nagłówkiem
Aby dodać nagłówek do legendy, dodaj title
parametr do legend
funkcji.
Przykład
Dodaj legendę z nagłówkiem:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y, labels = mylabels)
plt.legend(title = "Four Fruits:")
plt.show()
Wynik: