1. Pojęcie i zastosowanie wykresu kołowego
Wykres kołowy, czyli "tort", pozwala wizualnie przedstawić względne rozmiary części jednego całości. Jeśli kiedykolwiek zapytałeś 10 swoich znajomych o ich ulubiony język programowania i chciałbyś to pokazać w formie wykresu, wykres kołowy to coś, czego potrzebujesz. Doskonale nadaje się do pokazania części składających się na coś, na przykład udziału rynkowego firm lub podziału czasu między programowaniem a oglądaniem filmików z kotami.
Wykorzystanie funkcji pie()
do tworzenia
wykresu kołowego
Matplotlib oferuje świetną funkcję
pie()
, która sprawia, że tworzenie wykresów
kołowych jest tak łatwe, jak zjedzenie kawałka tortu!
Oto podstawowy przykład użycia:
import matplotlib.pyplot as plt
# Dane do wykresu
labels = ['Python', 'JavaScript', 'C++', 'Java']
sizes = [40, 30, 20, 10] # Udziały w procentach
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue'] # Kolory segmentów
# Tworzenie wykresu
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=140)
# Ustawienie osi dla wykresu kołowego
plt.axis('equal')
# Wyświetlenie wykresu
plt.show()
W tym przykładzie zdefiniowaliśmy kategorie (języki
programowania), ich rozmiary i używane kolory. Następnie
wywołaliśmy funkcję pie()
, aby utworzyć wykres.
Parametr autopct='%1.1f%%'
dodaje procenty
na segmenty, a startangle=140
obraca wykres
tak, aby wyglądał bardziej estetycznie.
2. Dostosowywanie wykresów kołowych
Wykres kołowy jest jak strój na Sylwestra — można go udekorować i dostosować do własnego gustu. Prześledźmy kilka sposobów na jego personalizację.
Wyświetlanie procentów autopct
Parametr autopct
pozwala wyświetlić procentowy udział
każdej kategorii w sektorze. Wartość "%1.1f%%"
ustala format wyświetlania procentów (jedna liczba po przecinku).
import matplotlib.pyplot as plt
labels = ["Koty", "Psy", "Ptaki", "Ryby"]
sizes = [35, 30, 20, 15]
plt.pie(sizes, labels=labels, autopct="%1.1f%%")
plt.title("Popularność zwierząt domowych")
plt.show()
Wyróżnianie segmentu wykresu explode
Parametr explode
pozwala wyróżnić jeden lub
kilka sektorów, przesuwając je od środka. Może to być
przydatne do zwrócenia uwagi na konkretną kategorię.
import matplotlib.pyplot as plt
labels = ["Koty", "Psy", "Ptaki", "Ryby"]
sizes = [35, 30, 20, 15]
explode = (0.1, 0, 0, 0) # Wyróżniamy pierwszy sektor (koty)
plt.pie(sizes, labels=labels, autopct="%1.1f%%", explode=explode)
plt.title("Popularność zwierząt domowych")
plt.show()
Tutaj sektor „Koty” przesuwa się od środka o 10% (wartość
0.1
), przyciągając uwagę.
Zmiana kolorów sektorów colors
Możesz ustawić kolor każdego sektora za pomocą parametru
colors
, przekazując listę kolorów.
import matplotlib.pyplot as plt
labels = ["Koty", "Psy", "Ptaki", "Ryby"]
sizes = [35, 30, 20, 15]
colors = ["#ff9999", "#66b3ff", "#99ff99", "#ffcc99"]
plt.pie(sizes, labels=labels, autopct="%1.1f%%", colors=colors)
plt.title("Popularność zwierząt domowych")
plt.show()
W tym przykładzie każdy sektor otrzymał swój kolor w celu poprawy wizualnego odbioru.
Zmiana kąta początkowego startangle
Parametr startangle
ustawia kąt początkowy
wykresu. Może to pomóc w umieszczeniu głównej kategorii w
określonej pozycji, na przykład na górze wykresu.
import matplotlib.pyplot as plt
labels = ["Koty", "Psy", "Ptaki", "Ryby"]
sizes = [35, 30, 20, 15]
plt.pie(sizes, labels=labels, autopct="%1.1f%%", startangle=90)
plt.title("Popularność zwierząt domowych")
plt.show()
Parametr startangle=90
obraca wykres, tak aby pierwszy
sektor zaczynał się pod kątem 90 stopni (pionowo w górę).
3. Praktyczne przykłady
Choć wykresy kołowe są klasycznym narzędziem, nie są odpowiednie dla wszystkich przypadków. Jeśli masz wiele małych segmentów lub dane są trudne do przedstawienia na wykresie pierścieniowym, warto rozważyć inną wizualizację, na przykład bar-chart. Zawsze myśl o czytelności i odpowiedzialności wobec swojego odbiorcy.
Przykład: Analiza rynku wg segmentów
Załóżmy, że mamy dane o udziale rynkowym czterech firm i chcemy stworzyć wykres kołowy w celu wizualnego przedstawienia tych danych.
import matplotlib.pyplot as plt
# Dane o udziałach rynkowych
labels = ["Firma A", "Firma B", "Firma C", "Firma D"]
sizes = [40, 25, 20, 15]
colors = ["#ff9999", "#66b3ff", "#99ff99", "#ffcc99"]
explode = (0.1, 0, 0, 0) # Uwypuklenie sektora Firmy A
plt.pie(sizes, labels=labels, autopct="%1.1f%%", startangle=140, colors=colors, explode=explode)
plt.title("Podział udziałów rynkowych")
plt.show()
Ten wykres przedstawia udziały rynkowe firm i wyróżnia sektor Firmy A, aby podkreślić jej wiodącą pozycję na rynku.
Przydatne wskazówki dotyczące tworzenia wykresów kołowych
- Ogranicz liczbę kategorii: Wykresy kołowe są skuteczne przy niewielkiej liczbie kategorii. Jeśli kategorii jest zbyt wiele, wykres staje się trudny do odczytania.
- Dodaj procenty: Wyświetlenie wartości procentowych w sektorach pomaga szybciej interpretować dane.
- Wykorzystaj wyróżnienie (explode): Wyróżnij ważne kategorie, aby zwrócić na nie uwagę.
- Paleta kolorów: Używaj kolorów, które łatwo rozróżnić, szczególnie jeśli wykres zawiera więcej niż cztery kategorie.
- Rozważ alternatywy: Dla dużej liczby kategorii, wykres kołowy lepiej zastąpić wykresem słupkowym lub histogramem.
Wykorzystaj to małe ćwiczenie z wykresami kołowymi, aby pogłębić swoje umiejętności pracy z Matplotlib. To tylko jeden z kroków do zostania mistrzem wizualizacji danych, który potrafi opowiedzieć każdą historię za pomocą wykresów i grafów. Powodzenia i niech Twoje wykresy zawsze będą smakowite w odbiorze! 🍕
GO TO FULL VERSION