Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.


25.10.2019

Skalowalna infrastruktura

Red Hat OpenStack Platform 15
25.10.2019

Cienki klient 2.0

Windows Virtual Desktop
25.10.2019

Nowy sprzęt Microsoftu

Rodzina Surface się powiększa
24.10.2019

Serwery ARM

Oracle stawia na Ampere Computing
24.10.2019

Wszechstronny i elegancki

Dell XPS 15
10.10.2019

CYBERSEC EXPO - największe w...

Bezpieczeństwo cyfrowe nie jest problemem dotyczącym jedynie działów IT. Obecnie stanowi...
30.09.2019

Nowości w wirtualizacji

VMware World 2019
30.09.2019

Bezpieczeństwo mobile-first

Android 10

Python, style wykresów w bibliotekach Seaborn

Data publikacji: 18-04-2019 Autor: Grzegorz Kubera
Dostępne palety kolorystyczne...

To ostatnia część kursu poświęcona bibliotekom Seaborn. Najłatwiejsze zostawiliśmy na koniec – skupimy się na edycji stylów graficznych i kolorystyce wykresów, wykorzystując przy tym biblioteki Seaborn i częściowo Matplotlib. Dla przypomnienia dodajmy, że Seaborn to swojego rodzaju nakładka na Matplotlib.

 

Zanim przejdziemy do nauki odpowiednich komend i sprawdzania, jakie dają efekty, musimy przygotować środowisko pracy. Na pasku zadań w Windowsie wpisujemy w tym celu Anaconda Prompt i uruchamiamy wiersz poleceń. Kolejno podajemy komendy:

conda install seaborn
conda install numpy
conda install matplotlib

Wszystkie komendy należy zatwierdzić i po kolei zainstalować biblioteki NumPy, Matplotlib i Seaborn. Jeśli instalowaliśmy je wcześniej, nie musimy tego robić ponownie. Warto natomiast sprawdzić, czy do poszczególnych bibliotek nie ma aktualizacji – jeśli są, zainstalujmy je, zanim zaczniemy pracę w Jupyter Notebooku. Możliwe też, że wyświetli się komunikat o nowszej wersji Anacondy. W tym wypadku warto zainstalować aktualizację, wpisując polecenie:

conda update -n base conda

Po instalacji uruchamiamy Jupytera, wpisując:

jupyter notebook

Kiedy uruchomimy Jupytera, otwieramy notatnik w Pythonie 3, a następnie wpisujemy komendy:

import seaborn as sns
%matplotlib inline
tips = sns.load_dataset(‘tips’)
tips.head()

Komendy te odpowiednio oznaczają, że:

 

  • zaimportowaliśmy biblioteki Seaborn i chcąc z nich korzystać, będziemy podawać funkcje zaczynające się od polecenia sns;
  • będziemy wyświetlać wizualizacje bezpośrednio w notatniku Jupyter, za co odpowiada komenda %matplotlib inline;
  • załadowaliśmy zestaw danych tips (zawiera dane na temat rachunków i napiwków pozostawionych przez klientów w restauracji), który jest w postaci DataFrame’u z bibliotek Pandas;
  • wyświetliliśmy zestaw danych w formie tabeli za pomocą komendy tips.head().


Tabela z danymi tips wygląda tak:

 

 

 

Tak przygotowane środowisko pozwala już rozpocząć naukę stylów graficznych i kolorów dla wykresów w Seaborn.

> EDYTOWANIE STYLÓW – WYKRESY W SEABORN

Na potrzeby kursu wyświetlimy wykres uwzględniający dane z kategorii płeć (sex), czyli odpowiednio dla kobiet i mężczyzn (female oraz male). W tym celu wpisujemy komendę:

sns.countplot(x=’sex’,data=tips)


sns.countplot wyświetla informacje w postaci pasków dla zmiennej kategorycznej, a nie ilościowej. Uwzględniamy dane z zestawu tips, przez co uzyskujemy taki efekt jak na rys. 1.

Mamy więc kategorię sex oraz dane dla kobiet i mężczyzn w czytelnej formie. Teraz możemy nadać styl graficzny. W tym celu nad wykresem dodajemy polecenie sns.set_style() i wybieramy jeden z dostępnych stylów: darkgrid, white­grid, dark, white, ticks. Wpisujemy:

sns.set_style(‚dark’)
sns.countplot(x=’sex’,data=tips)

Efekt końcowy pokazano na rys. 2. Dla przećwiczenia warto wpisać wszystkie style i sprawdzić, jak wyglądają. Poniżej prezentujemy jeszcze inną wersję:

sns.set_style(‚whitegrid’)
sns.countplot(x=’sex’,data=tips)

Efekt jest widoczny na rys. 3.

Kolejny element stylu, na jaki możemy mieć wpływ, to obramowanie. Domyślnie wykres prezentowany jest w taki sposób, że ma obramowanie po wszystkich stronach: z lewej, prawej, na górze i na dole. Jeśli chcemy zmienić obramowanie
(rys. 4), wpisujemy polecenie:

sns.set_style(‚whitegrid’)
sns.countplot(x=’sex’,data=tips)
sns.despine()

 

Domyślnie polecenie sns.despine() skonfigurowane jest w taki sposób, że usuwa prawą i górną ramkę. W języku programistycznym wygląda to tak: sns.despine(fig=­None, ax=None, top=True, right=True, left=False, bottom=False, offset=None, trim=False). Jeżeli chcemy usunąć wszystkie ramki, edytujemy komendę w taki sposób:

sns.despine(left=True,bottom=True)

Dzięki temu wymusimy usunięcie również lewej i dolnej ramki. Efekt widać na rys. 5.

 

Dla zobrazowania prezentujemy jeszcze wykres w stylu graficznym darkgrid i bez ramek (rys. 6) dzięki wykorzystaniu polecenia:

sns.set_style(‘darkgrid’)
sns.countplot(x=’sex’,data=tips)
sns.despine(left=True,bottom=True)

Komenda sns.despine() przydaje się zwłaszcza wtedy, gdy tworzymy np. prezentację dla klienta i zależy nam, aby wszystkie elementy graficzne były ze sobą spójne. Jeśli autor prezentacji nie przewidział żadnych ramek/obramowań, wówczas możemy w podobny sposób zaprezentować wykresy z Pythona.

 

[...]

 

Założyciel firmy doradczo-technologicznej; pełnił funkcję redaktora naczelnego w magazynach i serwisach informacyjnych z branży ICT. Dziennikarz z ponad 12-letnim doświadczeniem i autor książek nt. start-upów i przedsiębiorczości. 

Artykuł pochodzi z miesięcznika: IT Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"