Matplotlib w Pythonie: wyjaśniono różne wykresy z przykładami

Opublikowany: 2021-06-21

Spis treści

Co to jest matplotlib?

Spośród kilku bibliotek dostępnych w Pythonie, matplotlib w Pythonie jest jedną z takich bibliotek wizualizacji, która pomaga w wizualizacji wykresów 2D tablicy. Biblioteka wizualizacji danych jest zbudowana na tablicach NumPy. To było w 2002 roku, kiedy John Hunter wprowadził wieloplatformową bibliotekę wizualizacji danych. Biblioteka oferuje wizualizację danych i graficzne wykreślanie danych, stanowiąc alternatywę dla MATLAB. API Matplotlib, czyli interfejsy programowania aplikacji, które są używane przez programistów do osadzania wykresów w aplikacjach GUI.

Matplotlib oferuje kilka wykresów graficznych, takich jak słupek, linia, histogram, rozproszenie itp. Wizualizacja oferowana przez wykres matplotlib umożliwia wizualny dostęp do ogromnych ilości danych. Wizualny wykres danych można wygenerować za pomocą kodu składającego się z kilku linii tylko ze względu na ustrukturyzowaną naturę skryptu python matplotlib.

Do nałożenia warstwy skryptowej matplotlib są używane dwa interfejsy API:

  • Python API: Jest to hierarchia obiektów kodu Pythona.
  • OO (Object Oriented) API: Bezpośredni dostęp do warstw zaplecza Matplotlib jest zapewniany przez API.

Instalacja

Instalację biblioteki matplotlib można wykonać poprzez pobranie matplotlib i jej zależności z Python Package Index (PyPI) jako pakietu binarnego.

Polecenie, którego można użyć do zainstalowania biblioteki, to

python -m pip zainstaluj matplotlib

W systemie operacyjnym, takim jak Windows, Linux i macOS, matplotlib i jego zależności są obecne jako pakiety kół. W takich przypadkach polecenie do wykonania to.

python -mpip install -U matplotlib

Biblioteka jest również dostępna jako nieskompilowane pliki źródłowe, których instalacja jest dość złożona, ponieważ system lokalny będzie wymagał posiadania odpowiedniego kompilatora dla systemu operacyjnego. Ponadto platforma ActiveState może być używana do budowania matplotlib ze źródła i pakowania go dla wymaganego systemu operacyjnego.

Importowanie

Importowanie matplotlib do Pythona odbywa się za pomocą poleceń

  • z matplotlib importuj pyplot jako plt
  • importuj matplotlib.pyplot jako plt

Różne działki i przykłady

1. Menu interfejsu użytkownika Matplotlib

Menu interfejsu użytkownika Matplotlib jest generowane podczas tworzenia wykresów za pomocą Matplotlib. Dostosowywanie fabuły i przełączanie elementów wraz z możliwością powiększania fabuły jest oferowane przez interfejs użytkownika Matplotlib.

2. Matplotlib i NumPy

NumPy to pakiet pod Pythona do wykonywania obliczeń naukowych. Matplotlib jest zbudowany na NumPy i używa funkcji dostarczanych przez NumPy dla swoich danych liczbowych i wielowymiarowych tablic.

3. Matplotlib i Pandy

Pandas to biblioteka Pythona, która służy do manipulowania danymi i analizy przez matplotlib. Nie jest to wymagana zależność dla matplotlib, ale zapewnia ramkę danych.

Wykresy Matplotlib umożliwiają wizualną reprezentację ogromnych ilości danych. Za pomocą wykresów można było zidentyfikować trendy i specyficzne wzorce obecne w danych, co jest niezbędne do tworzenia korelacji. Wykresy Matplotlib zasadniczo zapewniają sposób wnioskowania na temat informacji ilościowych.

Niektóre typy wykresów matplotlib to:

1. Działka liniowa:

Korzystanie z dwóch punktów

  • Wykres liniowy Matplotlib jest generowany przez importowanie pyplot.
  • Do rysowania punktów na diagramie używana jest funkcja plot() , która domyślnie rysuje linię z jednego punktu do drugiego.
  • Uwzględniane są dwa parametry określające punkty do rysowania linii.
  • Punkty na osi X są przechowywane jako tablica w parametrze 1.
  • Punkty osi Y są przechowywane jako tablica w parametrze 2.
  • Przykład: Jeśli linia ma być wykreślona z punktów (2, 6), do (10, 15), to muszą być przekazane dwie tablice, tj. [2, 10] i [6, 15].

Przykład: kod pokazujący wykreślanie linii i wygenerowany wykres

Źródło

2. Korzystanie z wielu punktów

  • Podobnie jak dwa punkty są używane do wykreślania, wiele punktów można wykreślić za pomocą matplotlib w python .
  • Punkty powinny mieć tę samą liczbę na obu osiach, aby wykreślić liczbę punktów.
  • Wejście:

Źródło

3. Punkty liniowe bez punktów osi x

  • Jeśli punkty na osi X nie są określone, wartości domyślne dla osi X są przyjmowane na podstawie punktów na osi Y.
  • Dane wejściowe: Kod pozostanie taki sam, jak powyższe kody do kreślenia linii, ale z tylko jedną tablicą jako danymi wejściowymi, tj. tablicą dla osi Y. Oś X zostanie przyjęta jako domyślna.

ypunkty = np. tablica([10, 8, 12, 20, 3, 9])

  • Działka wygenerowana:

W matplotlib dostępne są różne opcje, które pozwalają zwiększyć efekty wizualne działek:

1. Markery

  • Aby wzmocnić efekty wizualne punktów na diagramie, można użyć określonego znacznika za pomocą znacznika słowa kluczowego .
  • Znacznikami może być gwiazda, okrąg, punkt, piksel, X itp.
  • Przykład: plt.plot(ypoints, marker = 'o') może być użyty do wykreślania punktów
  • Pozostałe listy znaczników są pokazane w poniższym fragmencie zaczerpniętym z

Źródło

  • Znacznik można zmienić zgodnie z kolorem (140 obsługiwanych kolorów), rozmiarem i typem linii, której można użyć, np. linią kropkowaną, ciągłą lub przerywaną.
  • Polecenia markeredge ( mec ) i markerfacecolor ( mfc ) służą do pokolorowania całego markera.
  • Daje możliwość kolorowania tylko krawędzi markera lub całego markera.
  • Markersize lub w skrócie ms służy do ustawienia rozmiaru markera.

Składnia: plt.plot(ypunkty, znacznik = 'o', ms = 30)

2. Linia Matplotlib

  • Styl kreślonej linii można zmienić odpowiednio za pomocą opcji stylu linii, kropkowanej lub przerywanej reprezentowanych jako ls , : lub .

Składnia: plt.plot(ypunkty, ls = ':')

  • Kolor linii można zmienić odpowiednio za pomocą słowa kluczowego color lub w skróconej formie za pomocą c . matplotlib zapewnia 140 obsługiwanych kolorów do zmiany wyglądu koloru linii.
  • Szerokość linii można zmienić za pomocą argumentu linewidth lub lw . Jest to liczba zmiennoprzecinkowa w punktach.
  • Wiele linii można wykreślić na tym samym wykresie za pomocą funkcji plt.plot() .
  • Funkcja grid() służy do dodawania linii siatki do wykresu. Parametry osi można dodać, aby określić, w której osi wymagana jest linia siatki.

Składnia: plt.grid(oś = 'x')

  • Właściwości siatki można odpowiednio zmienić, takie jak kolor, styl linii i szerokość poprzez argumenty, kolor, style linii i liczbę.

Składnia: plt.grid(kolor = 'zielony', styl linii = '–', szerokość linii = 0.5)

3. Etykiety i tytuły Matplotlib

  • Funkcje xlabel() i ylabel() służą do etykietowania odpowiedniego asex.
  • Funkcja title() służy do ustawienia tytułu wykresu.
  • Właściwości czcionki wykresu można zmienić za pomocą parametru fontdict .
  • Parametr loc może służyć do określenia pozycji tytułu.

Wiele wykresów można narysować na jednym rysunku za pomocą funkcji subplots() .

4. Wykres punktowy Matplotlib

  • Funkcja scatter() może być używana z pyplot do rysowania wykresu punktowego.
  • Wymagane są dwie tablice o tej samej długości, tj. jedna tablica na każdą oś.
  • Przykład:

Źródło

Działka wygenerowana

  • kolor lub argument c służy do pokolorowania punktów na wykresie punktowym.
  • Colormap można użyć do określenia wymaganego koloru na wykresie rozrzutu. Każdy kolor na mapie kolorów ma określoną wartość. Można go włączyć za pomocą argumentu cmap nd, a następnie przypisując nazwę mapy kolorów. Kilka wbudowanych map kolorów jest dostępnych w matplotlib.

Składnia: plt.scatter(x, y, c=kolory, cmap='viridis')

Viridis to wbudowana mapa kolorów dostępna w matplotlib.

  • Rozmiar i przezroczystość kropek można zmienić za pomocą argumentu s i alfa .
  • Mapę kolorów można łączyć z różnymi rozmiarami kropek.

5. Diagramy słupkowe Matplotlib

  • Funkcja bar() służy do rysowania wykresów słupkowych . Argumenty dotyczące układu pasków są wymienione w funkcji bar() . Wykreśla pionowe diagramy słupkowe.

  • Do wykreślania poziomych diagramów słupkowych używana jest funkcja barh() .
  • Wejście:

  • Działka wygenerowana:

Źródło

  • Argument color jest używany z funkcjami bar() i barh() do ustawiania kolorów paska.

Składnia: plt.bar(x, y, kolor = „zielony”).

  • Argument szerokości jest używany z funkcjami bar() i barh() do ustawienia szerokości paska.

Składnia: plt.bar(x, y, szerokość = 0,2).

  • Kolejnym argumentem przyjmowanym przez funkcje bar() i barh() jest wysokość , która służy do ustawiania wysokości słupka.

6. Wykres kołowy Matplotlib

  • Wykres kołowy jest tworzony za pomocą funkcji pie() w bibliotece matplotlib.
  • Przykład: Wejście:

  • Działka wygenerowana:

Źródło

  • Każdy klin może być oznaczony etykietą parametru, która jest tablicą z etykietami dla każdego klina.

Składnia: mylabels = [ „samochody” , „rowery” , „rowery” , „autobusy” ]

  • Domyślny kąt początkowy na wykresie kołowym to oś X, którą można zmienić za pomocą parametru startangle. Kąt jest zdefiniowany w stopniach, a domyślny kąt to 0.
  • Za pomocą parametru rozbicia można wyświetlić żądany klin jako wyróżniający się. Jest określany za pomocą tablicy z wartością klina, która ma się wyróżniać, a pozostałe wartości są utrzymywane jako 0.

Składnia: myexplode = [0.2, 0, 0, 0]

  • Ustawienie parametru shadows na true spowoduje utworzenie cienia dla wykresu kołowego.
  • Parametr colors służy do określenia kolorów każdego klina poprzez tablicę.

Składnia: mylabels = [ „samochody” , „rowery” , „rowery” , „autobusy” ]

mojekolory = [„czarny”, „gorący różowy”, „niebieski”, zielony”]

  • Funkcja legend() służy do dodawania wyjaśnienia do każdego klina.

7. Histogram

  • Histogram służy do wykreślania rozkładów częstotliwości.
  • Funkcja hist() służy do tworzenia histogramu, który używa tablicy liczb do tworzenia histogramu.
  • Przykład: Dane wejściowe: powyższe wiersze będą takie same, jak te używane do wykreślania wykresów słupkowych.

x = np. losowy. normalny (90, 100, 200)

drukuj(x)

  • Działka wygenerowana:

Wniosek

Jak omówiono w artykule, matplotlib w Pythonie może być używany do wykreślania danych w różnych stylach. Dostępne są dalsze różne opcje ulepszania naszych działek, umożliwiając użytkownikowi etykietowanie, zmianę rozmiaru i kolorowanie zgodnie z życzeniem. Dlatego python i jego biblioteki są bardzo pomocne w analizie i obsłudze danych w obecnych czasach.

Szkolenie z programowania Python z zakresu data science jest dostępne w ramach kursu Executive PG Program in Data Science oferowanego przez upGrad . Jeśli chcesz zostać przeszkolony przez ekspertów branżowych i zbadać różne możliwości, jakie daje nauka o danych, możesz zapisać się na kurs. Kurs jest oferowany przez IIIT-Bangalore i zaprojektowany specjalnie dla początkujących specjalistów średniego szczebla w grupie wiekowej od 21 do 45 lat. Niezależnie od płci, jeśli zaliczasz się do tej wspomnianej kategorii i marzysz o zostaniu czołowym naukowcem danych, dołącz do nas w tym przedsięwzięciu. W przypadku każdego statku asystującego nasz zespół jest gotowy do pomocy.

Jakie są zalety modułu Pandy?

Pandas to jeden z najważniejszych i najbardziej użytecznych modułów Pythona, który ma różne przypadki użycia. Oto niektóre z zalet modułu Pandy.
1. Pandy umożliwiają wygodne filtrowanie danych i tworzenie podzbiorów.
2. Jego kod jest przejrzysty i zrozumiały, dzięki czemu użytkownicy mogą bardziej skoncentrować się na głównym celu.
3. Ponieważ jest napisany w NumPy, dziedziczy również niektóre przydatne funkcje NumPy.

Do czego służy biblioteka Matplotlib?

1. Biblioteka Matplotlib zapewnia wiele przydatnych interfejsów API do osadzania różnych typów wykresów, w tym histogramów, wykresów liniowych i słupkowych, wykresów punktowych i wykresów słupkowych.
2. Ta potężna biblioteka może pomóc w tworzeniu wykresów 2D przy użyciu danych przechowywanych w tablicy. Jego prosta struktura kodu pozwala na osadzenie dowolnego rodzaju wykresu poprzez dodanie kilku prostych linijek kodu.
3. Posiada interfejs zorientowany obiektowo, co czyni go potężną alternatywą dla MATLAB i Pyplot. Jest wysoce konfigurowalny, ale wymaga pewnego doświadczenia, aby korzystać z zaawansowanych funkcji.
4. Jeśli potrzebujesz osadzić prostsze wykresy w swojej aplikacji, powinieneś wybrać interfejs Pythona w stylu MATLAB. Jeśli jednak masz złożone wykresy, jego interfejs OOP byłby znacznie lepszą opcją.