Menu
CoddyTech

Wykresy słupkowe

Część sekcji Dane i wykresy ścieżki Machine Learning w Coddy. Lekcja 26 z 60.

Ten rozdział pokazuje, jak przekształcać dane w podsumowania. Po jego ukończeniu stworzysz raport z dwoma wykresami, taki jak ten:

Dwa wykresy obok siebie: wykres słupkowy średnich opadów w poszczególne dni tygodnia, z największymi opadami w czwartek, oraz histogram dziennych opadów, pokazujący, że w większość dni prawie wcale nie pada

Zaczynamy od wykresów słupkowych. Smaki nie mają określonej kolejności, więc linia łącząca jeden z drugim nic nie oznacza. ax.bar(categories, values) rysuje jeden słupek dla każdej kategorii:

flavors = ["Chocolate", "Vanilla", "Mint", "Mango"]
sold = [42, 27, 15, 21]
fig, ax = plt.subplots()
ax.bar(flavors, sold)
ax.set_title("Scoops Sold")
ax.set_ylabel("Scoops")
plt.show()

Wykres słupkowy zatytułowany Sprzedane porcje, z czterema słupkami: Chocolate 42, Vanilla 27, Mint 15, Mango 21

Słupki zaczynają się od 0, więc wysokości można bezpośrednio porównywać: wartość czekolady wynosząca 42 jest dwa razy większa niż wartość mango wynosząca 21. Przed trenowaniem modelu słupki pokazujące, jak często pojawia się każda odpowiedź, wskazują, czy któraś z nich dominuje.

challenge icon

Wyzwanie

Średni

48 uczniów odpowiedziało, jak dociera do szkoły. counts zawiera odpowiedzi dla każdego kodu: 1 pieszo, 2 rowerem, 3 autobusem, 4 samochodem. Aby porównać szkoły, przedstaw udziały:

  1. Zamień liczby na procenty, zaokrąglone do 1 miejsca po przecinku (12 z 48 to 25.0).
  2. Przedstaw je jako słupki: Walk, Bike, Bus, Car.
  3. Oznacz oś pionową jako Students (%).

Twój wykres powinien wyglądać tak, dla mniejszej szkoły:

Wykres słupkowy zatytułowany Dojazd do szkoły, z czterema słupkami przedstawiającymi wartości procentowe: pieszo 26.7, rowerem 13.3, autobusem 40, samochodem 20

Twój program niczego nie wyświetla. Coddy opisuje słupki w wynikach.

Spróbuj swoich sił

import numpy as np
import matplotlib.pyplot as plt

# 1 = pieszo, 2 = rower, 3 = autobus, 4 = samochód
answers = np.array([1, 3, 1, 4, 3, 3, 4, 3, 4, 4, 3, 4, 4, 4, 3, 3,
                    2, 2, 2, 1, 1, 3, 1, 1, 1, 2, 3, 3, 1, 3, 2, 1,
                    3, 4, 3, 3, 1, 1, 1, 2, 3, 1, 3, 4, 4, 3, 2, 4])


# Zwraca tablicę: ile wartości odpowiada każdemu kodowi od 1 do 4
def count_codes(values):
    counts = []
    for code in range(1, 5):
        counts.append((values == code).sum())
    return np.array(counts)


counts = count_codes(answers)
fig, ax = plt.subplots()
ax.set_title("Getting to School")

# Napisz swój kod poniżej

# Nie zmieniaj poniższego wiersza
plt.show()
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Dane i wykresy

Poćwicz samodzielnie: Kompilator Python online