Menu
CoddyTech

Rysunki i osie

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

Prawdziwy kod nadaje nazwę wykresowi, który rysuje. plt.subplots() zwraca dwie rzeczy: figurę, czyli cały obraz, oraz osie, czyli wykres wewnątrz niej:

Schemat: szare pole oznaczone fig, czyli cały obraz, zawiera niebieskie pole oznaczone ax, czyli wykres. ax.set_title znajduje się nad nim, ax.set_xlabel pod nim, ax.set_ylabel po jego lewej stronie, a ax.plot rysuje linię wewnątrz

fig, ax = przechwytuje oba. Potem wszystko dzieje się na ax:

years = [2021, 2022, 2023, 2024]
members = [35, 48, 61, 59]
fig, ax = plt.subplots()
ax.plot(years, members)
ax.set_title("Club Members")
ax.set_xlabel("Year")
ax.set_ylabel("Members")
plt.show()

Metody rysowania zachowują swoje nazwy: ax.plot, ax.scatter, ax.legend. Metody tekstowe zyskują set_.

Po co? Wkrótce na jednej figurze znajdzie się kilka wykresów, a ax wskazuje, o który z nich chodzi. Od tej pory każdy wykres zaczyna się w ten sposób.

challenge icon

Wyzwanie

Średni

W kodzie początkowym wykres przedstawia siedem filii biblioteki za pomocą funkcji plt: jedną kropkę na filię. Przepisz go, używając formy ax:

  1. Zacznij od fig, ax = plt.subplots().
  2. Narysuj kropki, tytuł i obie etykiety za pomocą metod ax, używając tych samych tekstów.
  3. Usuń stare wiersze plt, pozostawiając plt.show().

Wykres pozostaje taki sam; zmienia się tylko kod. Raport kodu początkowego mówi Drawn with fig and ax: no. Twój powinien brzmieć:

Charts drawn: 1
Drawn with fig and ax: yes
Title: Library Branches
X label: Hours open per week
Y label: Loans per week
Lines: 0
Dots: 7
Across (x): [30, 45, 38, 52, 24, 60, 41]
Up (y): [410, 690, 520, 800, 300, 930, 610]

Spróbuj swoich sił

import matplotlib.pyplot as plt

# Jedna wartość na każdą filię biblioteki miejskiej
hours = [30, 45, 38, 52, 24, 60, 41]
loans = [410, 690, 520, 800, 300, 930, 610]

# Przepisz ten wykres, używając fig, ax = plt.subplots() oraz metod ax
plt.scatter(hours, loans)
plt.title("Library Branches")
plt.xlabel("Hours open per week")
plt.ylabel("Loans per week")
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