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