Matplotlib – kalendarz adwentowy #17

W tworzeniu rozwiązań opartych o uczenie maszynowe kluczowe jest zrozumienie efektów pracy naszego modelu. Tworzymy więc sobie różne metryki i odczytujemy uzyskane wyniki. Czasem jednak chciałoby się zobaczyć wizualizację efektów naszej pracy, żeby łatwiej zrozumieć, jak nam idzie. Aby stworzyć odpowiednie wizualizacje w Pythonie, musimy użyć jakiejś biblioteki, bo Python sam z siebie nie potrafi takich rzeczy. Jedną z najpopularniejszych bibliotek pozwalających tworzyć wykresy jest Matplotlib.

Dlaczego Matplotlib jest taki popularny?

Matplotlib powstał w 2003 roku, co w świecie open source pozwala go uznać za dojrzałe oprogramowanie. Z tego co udało mi się zorientować, to idea stojąca za tą biblioteką była następująca: stworzyć system do wykresów dla języka Python, który będzie przypominał swoją funkcjonalnością i sposobem pracy system wykresów MATLAB. Z czasem jednak rozwój tej biblioteki został ukierunkowany na większą uniwersalność i personalizację. Nie jest już więc aktualnie uważany za klona systemu wykresów MATLAB. I waśnie ta uniwersalność i możliwości personalizacji oraz fakt, że przez długi czas była to praktycznie jedyna opcja na wykresy w Pythonie, sprawiły, że jest to chyba najpopularniejszy system do wykresów 2D w Pythonie.

Skomplikowanie

Spójrz na poniższy obrazek:

Elementy wykresu Matplotlib
Elementy wykresu Matplotlib

Mamy tutaj niby prosty wykres punktów i dwie linie. Okazuje się, że każde kółeczko na powyższym wykresie identyfikuje jeden z elementów, który możemy programatycznie zmieniać. Jest tak dlatego, że wykresy Matplotlib są obiektami, które posiadają jakieś modyfikowalne atrybuty. Do ostatniego momentu nasz wykres jest więc kodem, który dopiero gdy już wszystko zaprogramujemy, staje się obrazkiem. Świetna sprawa, jednak do czasu, gdy potrzebujemy jakiś bardziej pomysłowy wykres do podejrzenia na szybko. Wtedy zaprogramowanie takiego wykresu może stać się zbyt czasochłonne.

I Seaborn jako alternatywa

Jeżeli czytasz już tego bloga albo chociaż przeglądasz kalendarz adwentowy, to wiesz zapewne, co się musiało wydarzyć. Ktoś wziął Matplotlib i obudował go w taki sposób, żeby dało się wygodnie, szybko i łatwo korzystać z jego najważniejszych części. Tak właśnie powstała biblioteka Seaborn, która oprócz tego, że ułatwia pracę, to dodatkowo powstała z myślą o wsparciu biblioteki do przetwarzania danych Pandas. Dla wielu osób naturalnym jest więc używanie Seaborn, żeby oglądać na szybko, interesujące ich wyniki. Natomiast gdy szukają czegoś do sterowania każdym elementem wykresu (np. przygotowując publikację), to wtedy poświęcają trochę więcej czasu i zanurzają się w Matplotlib.

Matplotlib — Podsumowanie

Matplotlib i Seaborn to biblioteki do tworzenia wykresów wewnątrz skryptów języka Python. Nie da się w praktyce ich stworzyć, klikając tak jak np. w programach typu Excel/LibreOffice Calc. Dla niektórych jest to zaleta, bo mogą sobie wszystko zaprogramować i np. stworzyć biblioteczkę wykresów do ponownego użycia. Dla niektórych jest to wada, bo najpierw trzeba się zastanowić, co chcemy osiągnąć, a dopiero później to widzimy. Jeśli uda się w ogóle wygenerować wykres. Tak czy owak, są to aktualnie najbardziej rozwinięte narzędzia do wykresów w Pythonie, warto je więc mieć gdzieś w głowie, nawet jeśli na co dzień będziemy robić wykresy w jakiś inny sposób.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *