Najlepsze biblioteki wizualizacji danych w Pythonie, o których powinieneś wiedzieć

Opublikowany: 2020-03-20

Python może robić wiele rzeczy z danymi. Jedną z wielu jego możliwości jest wizualizacja. Ma wiele bibliotek, których możesz użyć do tego celu. W tym artykule przyjrzymy się niektórym z jego znanych bibliotek i różnym wykresom, które można za ich pomocą rysować.

Spis treści

Wizualizacja danych w Pythonie

W tym artykule udostępniliśmy wiele przykładów, wypróbuj je za pomocą zestawu danych. Zacznijmy:

Biblioteki wizualizacji danych w Pythonie

Python ma wiele bibliotek do tworzenia pięknych wykresów. Wszystkie mają różne funkcje, które zwiększają ich wydajność i możliwości. I są dostępne dla wszystkich poziomów umiejętności. Oznacza to, że możesz wykonywać wizualizację danych w Pythonie, niezależnie od tego, czy jesteś początkującym, czy zaawansowanym programistą. Oto kilka znanych bibliotek:

  • Zrodzony z morza
  • Matplotlib
  • Pandy

Istnieje wiele innych bibliotek Pythona do nauki danych , ale na razie skupiliśmy się na tych najbardziej znanych. Omówimy teraz te różne biblioteki i zrozumiemy, jak można rysować wykresy za pomocą ich i Pythona. Zacznijmy.

Matplotlib

Najpopularniejszą biblioteką Pythona do kreślenia wykresów jest Matplotlib. Nie wymaga dużego doświadczenia, a dla początkujących jest idealny. Dzięki tej bibliotece możesz rozpocząć naukę wizualizacji danych i opanować różnorodne wykresy i wizualizacje. Daje ci dużo swobody, ale musiałbyś też napisać dużo kodu.

Ludzie używają Matplotlib do prostych wizualizacji, takich jak wykresy słupkowe i histogramy.

Przeczytaj : Ramki danych w Pythonie

Wykres liniowy

Aby utworzyć wykres liniowy, musisz użyć metody „wykresu”. Zapętlając kolumny, możesz utworzyć wiele kolumn na wykresie. Użyj w tym celu następującego kodu:

# pobierz kolumny do wykreślenia

kolumny = tęczówka.kolumny.drop(['klasa'])

# utwórz x danych

x_data = zakres(0, tęczówka.kształt[0])

# utwórz figurę i oś

fig, topór = plt.podwykres()

# wykreśl każdą kolumnę

dla kolumny w kolumnach:

ax.plot(x_data, iris[kolumna], etykieta=kolumna)

# ustaw tytuł i legendę

ax.set_title('Zbiór danych tęczówki')

topór.legenda()

Wykres punktowy

Wykres punktowy można utworzyć za pomocą metody „scatter”. Powinieneś utworzyć oś i figurę za pomocą „plt.subplots”, aby nadać etykietom działki i tytułowi.

Użyj następującego kodu:

# utwórz figurę i oś

rys, topór = plt.podwykres()

# rozmieść sepal_length w sepal_width

topór.scatter(iris['sepal_length'], iris['sepal_width'])

# ustaw tytuł i etykiety

ax.set_title('Zbiór danych tęczówki')

ax.set_xlabel('sepal_length')

ax.set_ylabel('sepal_width')

Możesz dodać kolor do punktów danych zgodnie z ich klasami. W tym celu będziesz musiał stworzyć słownik, który odwzoruje klasę na kolor. Rozproszyłby każdy punkt również za pomocą pętli for.

# utwórz słownik kolorów

kolory = {'Iris-setosa':'r', 'Iris-versicolor':'g', 'Iris-virginica':'b'}

# utwórz figurę i oś

rys, topór = plt.podwykres()

# wykreśl każdy punkt danych

for i in range(len(iris['sepal_length'])):

ax.scatter(iris['sepal_length'][i], iris['sepal_width'][i],kolor=kolory[iris['class'][i]])

# ustaw tytuł i etykiety

ax.set_title('Zbiór danych tęczówki')

ax.set_xlabel('sepal_length')

ax.set_ylabel('sepal_width')

Histogram

Możesz użyć metody „hist”, aby utworzyć histogram w Matplotlib. Może obliczyć, jak często każda klasa występuje, jeśli podamy jej dane kategoryczne. Oto kod, którego musisz użyć, aby wykreślić histogram w Matplotlib:

# utwórz figurę i oś

rys, topór = plt.podwykres()

# histogram wykresu

ax.hist(wine_reviews['punkty'])

# ustaw tytuł i etykiety

ax.set_title('Wyniki recenzji wina')

ax.set_xlabel('Punkty')

ax.set_ylabel('Częstotliwość')

Wykres słupkowy

Matplotlib ma proste metody wykreślania różnych wykresów. Na przykład w tym przypadku, aby utworzyć wykres słupkowy w Matplotlib, musisz użyć „paska”. Nie może automatycznie obliczyć częstotliwości kategorii, więc aby rozwiązać ten problem, musisz użyć funkcji „value_counts”. Jeśli twoje dane nie mają wielu typów, wykres słupkowy będzie idealny do ich wizualizacji.

# utwórz figurę i oś

rys, topór = plt.podwykres()

# policz wystąpienie każdej klasy

data = wine_reviews['points'].value_counts()

# pobierz dane x i y

punkty = data.index

częstotliwość = dane.wartości

# utwórz wykres słupkowy

ax.bar(punkty, częstotliwość)

# ustaw tytuł i etykiety

ax.set_title('Wyniki recenzji wina')

ax.set_xlabel('Punkty')

ax.set_ylabel('Częstotliwość')

Pandy

Pandas to biblioteka Pythona popularna do analizy i manipulacji danymi. Jest to biblioteka o otwartym kodzie źródłowym, więc możesz jej używać za darmo. Wszedł na rynek w 2008 roku i od tego czasu stał się jedną z najpopularniejszych bibliotek do strukturyzacji danych.

Korzystając z ramki danych pandas, możesz łatwo tworzyć wykresy dla swoich danych. Jego API jest bardziej zaawansowane niż Matplotlib. Oznacza to, że możesz tworzyć wykresy z mniejszą ilością kodu w Pandas niż w Matplotlib.

Wykres słupkowy

W Pandas musisz użyć metody „plot.bar()”, aby wykreślić wykres słupkowy. Najpierw musisz policzyć wystąpienia na wykresie za pomocą „value_count()”, a następnie posortować je za pomocą „sort_index()”. Oto przykładowy kod do tworzenia wykresu słupkowego:

random_reviews['points'].value_counts().sort_index().plot.bar()

Możesz użyć metody „plot.barh()”, aby utworzyć poziomy wykres słupkowy w Pandas:

random_reviews['points'].value_counts().sort_index().plot.barh()

Możesz również wykreślić dane według liczby wystąpień:

random_reviews.groupby(„kraj”).cena.średnia().sort_wartości(rosnąco=fałsz)[:5].plot.bar()

Wykres liniowy

Będziesz musiał użyć „<dataframe>.plot.line()”, aby utworzyć wykres liniowy w Pandas. W Pandas nie musisz przechodzić przez każdą kolumnę, którą chcesz wykreślić, ponieważ może to zrobić automatycznie. Ta funkcja nie jest dostępna w Matplotlib. Oto kod:

random.drop(['class'], axis=1).plot.line(title='Losowy zbiór danych')

Wykres punktowy

Możesz utworzyć wykres punktowy w Pandas, używając „<zestaw danych>.plot.scatter()”. Musiałbyś przekazać mu dwa argumenty, którymi są nazwy kolumn x i y.

Oto jego przykład:

random.plot.scatter(x='sepal_length', y='sepal_width', title=”Losowy zbiór danych')

Histogram

Użyj „plot.hist”, aby utworzyć histogram w Pandas. Poza tym w tej metodzie nie ma zbyt wiele. Masz możliwość utworzenia jednego lub wielu histogramów.

Aby utworzyć jeden histogram, użyj następującego kodu:

random_reviews['points'].plot.hist()

Aby utworzyć wiele histogramów, użyj tego:

random.plot.hist(subplots=True, layout=(2,2), figsize=(10, 10), bins=20)

Zrodzony z morza

Seaborn jest oparty na Matplotlib i jest również dość popularną biblioteką Pythona do wizualizacji danych. Zapewnia zaawansowane interfejsy do kreślenia danych. Posiada wiele funkcji. Jego zaawansowane możliwości pozwalają tworzyć wspaniałe wykresy z dużo mniejszą liczbą wierszy kodu niż w przypadku Matplotlib.

Histogram

Wykres liniowy

Możesz użyć metody 'sns.line plot', aby stworzyć wykres liniowy w Seaborn. Możesz użyć metody 'sns.kdeplot' do zaokrąglenia krawędzi krzywych linii. Utrzymuje twoją fabułę całkiem czystą, jeśli ma wiele odstających elementów.

sns.lineplot(data=losowo.drop(['klasa'], oś=1))

Wykres punktowy

W Seaborn możesz utworzyć wykres punktowy za pomocą metody „.scatterplot”. W tym przypadku musisz dodać nazwy kolumn x i y, tak jak w przypadku Pand. Ale jest różnica. Nie możemy wywołać funkcji na danych, jak to zrobiliśmy w Pandas, więc musimy przekazać ją jako dodatkowy argument.

sns.scatterplot(x='długość_sepal', y='szerokość_sepal', dane=tęczówka)

Używając argumentu „odcień”, możesz również wyróżnić określone punkty. Ta funkcja nie jest taka łatwa w Matplotlib.

sns.scatterplot(x='długość_sepal', y='szerokość_sepal', odcień='klasa', dane=tęczówka)

Wykres słupkowy

Możesz użyć metody „sns.countplot”, aby utworzyć wykres słupkowy w Seaborn:

sns.countplot(losowe_recenzje['punkty'])

Teraz, gdy omówiliśmy krytyczne biblioteki do wizualizacji danych w Pythonie, możemy przyjrzeć się innym formom wykresów. Python i jego biblioteki umożliwiają tworzenie różnego rodzaju figur do kreślenia danych.

Inne rodzaje wizualizacji danych w Pythonie

Wykres kołowy

Wykresy kołowe przedstawiają dane w różnych częściach koła. Musiałeś widzieć w szkole mnóstwo wykresów kołowych. Wykresy kołowe przedstawiają dane w procentach. Łączna suma wszystkich segmentów wykresu kołowego powinna wynosić 100%. Oto przykładowy kod:

plt.pie(df['Wiek'], etykiety = {"A", "B", "C",

„D”, „E”, „F”,

„G”, „H”, „I”, „J”},

autopct ='% 1.1f %%', cień = Prawda)

plt.pokaż()

plt.pie(df['Dochód'], etykiety = {"A", "B", "C",

„D”, „E”, „F”,

„G”, „H”, „I”, „J”},

autopct ='% 1.1f %%', cień = Prawda)

plt.pokaż()

plt.pie(df['Sprzedaż'], etykiety = {"A", "B", "C",

„D”, „E”, „F”,

„G”, „H”, „I”, „J”},

autopct ='% 1.1f %%', cień = Prawda)

plt.pokaż()

Działki pudełkowe

Wykresy pudełkowe są oparte na minimum, pierwszym kwartylu, medianie, trzecim kwartylu i maksimum danych statystycznych. Wykres wygląda jak pudełko (a dokładniej prostokąt). Dlatego nosi nazwę „działka pudełkowa”. Oto przykładowy kod do tworzenia wykresu pudełkowego:

# Dla każdego numerycznego atrybutu ramki danych

df.wykres.pudełko()

# indywidualny wykres pudełkowy atrybutów

plt.boxplot(df['Dochód'])

plt.pokaż()

Przeczytaj także: 10 najlepszych narzędzi Pythona, które powinien znać każdy programista Pythona

Wniosek

Mamy nadzieję, że ten artykuł okazał się przydatny. Istnieje wiele rodzajów wykresów, które można kreślić za pomocą Pythona i jego różnych bibliotek. Jeśli nie wykonywałeś wcześniej wizualizacji danych w Pythonie, powinieneś zacząć od Matplotlib. Po jej opanowaniu możesz przejść do bardziej złożonych i zaawansowanych bibliotek wizualizacji danych, takich jak Pandas i Seaborn.

Jeśli chcesz dowiedzieć się więcej o Pythonie, nauce o danych, sprawdź dyplom PG IIIT-B i upGrad w dziedzinie nauki o danych, który jest stworzony dla pracujących profesjonalistów i oferuje ponad 10 studiów przypadków i projektów, praktyczne warsztaty praktyczne, mentoring z ekspertami z branży, Indywidualnie z mentorami branżowymi, ponad 400 godzin nauki i pomocy w pracy z najlepszymi firmami.

Jakie są najlepsze biblioteki wizualizacji danych w Pythonie?

Wizualizacja danych jest uważana za niezwykle ważną część analizy danych. Dzieje się tak, ponieważ nie ma lepszego sposobu niż zrozumienie kilku trendów danych i informacji w formacie wizualnym. Jeśli przedstawisz dane swojej firmy w formie pisemnej, ludzie mogą uznać to za nudne. Ale jeśli zaprezentujesz to samo w formie wizualnej, ludzie z pewnością zwrócą na to większą uwagę.

Aby uprościć proces wizualizacji danych, w Pythonie istnieją pewne biblioteki, które mogą Ci pomóc. Nie możesz powiedzieć, że któryś z nich jest najlepszy, ponieważ będzie to całkowicie zależeć od wymagań. Niektóre z najlepszych bibliotek wizualizacji danych w Pythonie to matplotlib, plotly, seaborn, GGplot i altair.

Jaka jest jedna z najlepszych bibliotek do kreślenia w Pythonie?

Jest ich wiele, aby ułatwić Ci pracę, jeśli chodzi o wizualizację danych i biblioteki kreślenia. Zaobserwowano, że spośród wszystkich dostępnych bibliotek, Matplotlib jest uważany przez użytkowników za lepszą.

Matplotlib zajmuje mniej miejsca, a także ma lepszy czas działania. Poza tym zapewnia również obiektowy interfejs API, który umożliwia użytkownikom tworzenie wykresów w samej aplikacji. Matplotlib obsługuje również wiele typów danych wyjściowych, a także jest darmowy i open-source.

Jaka jest domyślna biblioteka wizualizacji danych dla naukowców zajmujących się danymi?

Jeśli interesujesz się nauką o danych, istnieje duże prawdopodobieństwo, że korzystałeś już z biblioteki Matplotlib. Zaobserwowano, że początkujący i doświadczeni profesjonaliści wolą używać tej biblioteki do tworzenia złożonych wizualizacji danych.

Głównym powodem jego ogromnego zainteresowania jest elastyczność, jaką zapewnia użytkownikom jako biblioteka do drukowania 2D. Jeśli masz tło MATLAB, możesz zauważyć, że interfejs Pyplot z Matplotlib jest ci dość znajomy. Tak więc nie będziesz potrzebował dużo czasu, aby rozpocząć swoją pierwszą wizualizację. Użytkownik może kontrolować całą wizualizację w Matplotlib z najbardziej szczegółowego poziomu.