Koláčové grafy Matplotlib
Vytváření koláčových grafů
S Pyplotem můžete použít pie()
funkci ke kreslení koláčových grafů:
Příklad
Jednoduchý koláčový graf:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
plt.pie(y)
plt.show()
Výsledek:
Jak můžete vidět, koláčový graf vykresluje jeden kus (tzv. klín) pro každou hodnotu v poli (v tomto případě [35, 25, 25, 15]).
Ve výchozím nastavení začíná vykreslování prvního klínu od osy x a pohybuje se proti směru hodinových ručiček :
Poznámka: Velikost každého klínu se určí porovnáním hodnoty se všemi ostatními hodnotami pomocí tohoto vzorce:
Hodnota dělená součtem všech hodnot:x/sum(x)
Štítky
Přidejte štítky do výsečového grafu pomocí label
parametru.
Parametr label
musí být pole s jedním štítkem pro každý klín:
Příklad
Jednoduchý koláčový graf:
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()
Výsledek:
Počáteční úhel
Jak již bylo zmíněno, výchozí počáteční úhel je na ose x, ale počáteční úhel můžete změnit zadáním
startangle
parametru.
Parametr startangle
je definován úhlem ve stupních, výchozí úhel je 0:
Příklad
Začněte první klín pod úhlem 90 stupňů:
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()
Výsledek:
Explodovat
Možná chcete, aby jeden z klínů vynikl? Parametr
explode
vám to umožňuje.
Parametr explode
, pokud je zadán, a nikoli None
, musí být pole s jednou hodnotou pro každý klín.
Každá hodnota představuje, jak daleko od středu je každý klín zobrazen:
Příklad
Vytáhněte klín „Jablka“ 0,2 od středu koláče:
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()
Výsledek:
Stín
Přidejte stín do výsečového grafu nastavením
shadows
parametru na True
:
Příklad
Přidejte stín:
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()
Výsledek:
Barvy
colors
Parametrem můžete nastavit barvu každého klínu .
Parametr colors
, pokud je zadán, musí být pole s jednou hodnotou pro každý klín:
Příklad
Zadejte novou barvu pro každý klín:
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()
Výsledek:
Můžete použít hexadecimální hodnoty barev , kterýkoli ze 140 podporovaných názvů barev nebo jednu z těchto zkratek:
'r'
- Červená
'g'
- Zelená
'b'
- Modrá
'c'
- Azurová
'm'
- Purpurová
'y'
- Žlutá
'k'
- Černá
'w'
- Bílá
Legenda
Chcete-li přidat seznam vysvětlení pro každý klín, použijte legend()
funkci:
Příklad
Přidejte legendu:
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()
Výsledek:
Legenda Se Záhlavím
Chcete-li do legendy přidat záhlaví, přidejte title
parametr do legend
funkce.
Příklad
Přidejte legendu se záhlavím:
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()
Výsledek: