14. NumPy i Matplotlib¶
Dotychczas wystarczały nam listy, słowniki i moduł math. Obliczenia na dużych zbiorach liczb i ich wizualizacja wymagają jednak bibliotek spoza języka: NumPy dostarcza typ tablicy ndarray i operacje wykonywane na całych tablicach naraz, a Matplotlib rysuje wykresy. Na tych dwóch bibliotekach opiera się cały ekosystem naukowy Pythona — SciPy, pandas, scikit-learn — dlatego poznajemy je jako pierwsze biblioteki zewnętrzne używane w pełnych, uruchamianych przykładach. Dotąd instalowaliśmy wyłącznie narzędzia pracy, jak pytest w rozdziale 7.
Rozdział ma charakter pomostowy: pokazuje podstawy — tablice, operacje wektorowe, podstawowe wykresy — i domyka pomiar wektoryzacji z rozdziału 13. Pełne omówienie obu bibliotek, a także pandas i SciPy, przewidujemy w części „Python Zastosowania”, poświęconej bibliotekom.
Oba pakiety instalujemy w środowisku wirtualnym kursu z rozdziału 1. Instalacja i środowisko pracy:
Przykłady rozdziału sprawdziliśmy z NumPy 2.5.3 i Matplotlib 3.11.2 i wymagają one NumPy 2.x. Według stanu na 17 X 2026 powyższe polecenie instaluje NumPy 2.5.4 i Matplotlib 3.11.2, więc wynik skryptu wersje.py może podać nowszy numer wersji NumPy niż książka. Konwencja importu — import numpy as np oraz, dla wykresów, import matplotlib.pyplot as plt — jest powszechna i nie zmieniamy jej, bo tak wyglądają wszystkie przykłady w dokumentacji i w cudzym kodzie; poniższy skrypt importuje sam pakiet matplotlib, aby odczytać wersję:
Wykresy w tym rozdziale nie są zrzutami ekranu — każdy powstał z kodu, który go poprzedza, uruchomionego bez zmian.
Skrypty rozdziału zapisują w katalogu bieżącym pliki wynikowe — tablice (dane.npy, zestaw.npz), pliki tekstowe i rysunki (np. analiza.png) — i zastępują bez ostrzeżenia pliki o tych samych nazwach. Uruchamiamy je więc w katalogu przeznaczonym wyłącznie na przykłady książki, a nie w katalogu z własnymi plikami.
W tym rozdziale¶
- Tablice ndarray — od listy do tablicy, tworzenie, typy elementów, indeksowanie i maski, widok a kopia, zapis i odczyt
- Operacje na tablicach — funkcje uniwersalne, rozgłaszanie, agregacje z osią, kształt, liczby losowe, pomiar wektoryzacji, algebra liniowa
- Matplotlib — pierwszy wykres i styl obiektowy — hierarchia obiektów,
subplots(), style linii, tekst i adnotacje - Matplotlib — rodzaje wykresów, układ i zapis —
scatter(),bar(),hist(), wiele paneli,savefig(), typowe pułapki - Przykłady i rozszerzenia — podrozdział uzupełniający: wielomian bez
eval(), histogram z wykresem pudełkowym, mapa ciepła, animacja, SciPy, odsyłacz do Numby