Візуалізація даних у Python із Seaborn

python
візуалізація даних
seaborn
Візуалізація даних у Python із Seaborn cover image

Сьогодні найціннішим ресурсом у світі є вже не нафта, а дані. Візуалізація стає все більш важливим інструментом для розуміння мільярдів рядків даних. Перетворюючи дані в графічне представлення, яке легко інтерпретувати, візуалізація даних допомагає в розповіді даних, виділяючи відповідну інформацію, шаблони та викиди. Однак дані та графіка мають працювати разом: це мистецтво поєднання чудового аналізу з чудовим оповіданням. У цій публікації блогу ми покажемо вам «Sea Born», один із найвідоміших інструментів візуалізації, написаний на Python.

Інструменти візуалізації

Ми використовуємо інструменти візуалізації, щоб візуалізувати тенденції, шаблони, викиди та зв’язок між змінними. Це дуже затребувана навичка, особливо для кар’єри в галузі обробки даних.

Seaborn

Seaborn — це бібліотека візуалізації даних Python на основіmatplotlib. Він забезпечує інтерфейс високого рівня для малювання привабливої ​​та інформативної статистичної графіки.

Функції побудови Seaborn:

У Seaborn ми маємо 3 категорії ділянок

  • Категоріальні сюжети.

  • Ділянки розподілу.

  • Реляційні сюжети.


Категоріальні сюжети

Ми використовуємо функції категоріального графіка seaborn для візуалізації тенденцій категоріальної змінної або візуалізації зв’язку між двома змінними принаймні з однією категоріальною.

Графік:

  • Показує кількість спостережень кожної категорії з категоріальної змінної. Ми просто підраховуємо кількість спостережень кожної категорії змінної
seaborn.catplot(kind = 'count',
                data = dataset,
                x    = 'variable')

Count plot

Барна ділянка:

  • Представляє оцінку тенденції безперервної змінної з висотою прямокутника для кожної категорії категоріальної змінної. Отже, функція побудови графіка приймає дві змінні як вхідні дані: одну безперервну, а іншу — категоричну. Для кожної категорії зі змінної_1 ми обчислюємо тенденцію змінної_2.

  • Тенденція може бути середнім значенням, дисперсією або ви можете передати певну спеціальну функцію...

seaborn.catplot(kind = 'bar',**
                data = dataset,**
                x    = 'variable_1',**
                y    = 'variable_2',**
                estimator = np.mean)**

Bar Plot

Ділянка смуги:

  • Смужка — це одна з найпростіших і найпростіших діаграм у візуалізації даних, ми просто малюємо точки, які представляють значення безперервної змінної. Для кожної категорії змінної 1 ми будемо малювати значення змінної 2.

Strip Plot

seaborn.catplot(kind = 'strip',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                jitter = 0.15)

Ройовий сюжет:

  • Swarm plot дуже схожий на strip plot, оскільки має однакові функції. Різниця лише в тому, як він відображає бали. У той час як на смужковому графіку точки даних можуть накладатися, оскільки вони випадково розміщені на осі абсцисс, на ройовому графіку ми гарантуємо, що точки не накладаються, накладаючи їх одна на одну.

  • Недоліком тут є те, що якщо у нас багато точок даних, їх неможливо не перекривати, тому алгоритм видалить деякі точки даних, щоб уникнути перекриття.

Swarm Plot

seaborn.catplot(kind = 'swarm',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Коробковий сюжет:

  • Ящичний графік використовується для представлення розподілу безперервної змінної для кожної категорії категоріальної змінної. Незважаючи на те, що він досить простий, він дає багато інформації:

  • Значення квартилів:

Всередині рамки є горизонтальна лінія, яка представляє медіану. Горизонтальна лінія вгорі — це верхні квартилі, лінія під нею — нижні квартилі.

  • Викиди:

Зауважте, що є деякі точки за рамками, ці точки представляють викиди

Box Plot

seaborn.catplot(kind = 'box',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Сюжет для скрипки:

Замість побудови графіка коробки розподілу скрипковий графік побудує фактичний розподіл безперервної змінної для кожної категорії категоріальної змінної за допомогою KDE (Оцінка щільності ядра)

Violin Plot

seaborn.catplot(kind = 'violin',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Ділянки розподілу:

Ми використовуємо функції графіка розподілу Seaborn для візуалізації розподілу безперервних змінних.

Історичний сюжет:

На історичному графіку представлено розподіл неперервних змінних за допомогою бінів.

Hist Plot

seaborn.distplot(kind = 'hist',
                 data = dataset,
                 x    = 'variable',
                 bins = 20)

Графік KDE:

Діаграма Kde представляє фактичний розподіл даних за допомогою оцінки щільності ядра.

KDE Plot

seaborn.distplot(kind = 'kde',
                 data = dataset,
                 x    = 'variable')

Його також можна використовувати для представлення двовимірного розподілу двох неперервних змінних.

KDE Plot

seaborn.distplot(kind = 'kde',
                 data = dataset,
                 x    = 'variable_1',
                 y    = 'variable_2')

Графік ECDF:

Графік ECDF представляє емпіричний кумулятивний розподіл безперервної змінної.

ECDF Plot

seaborn.distplot(kind = 'ecdf',
                 data = dataset,
                 x    = 'variable')

Реляційні сюжети:

Ми використовуємо реляційні функції побудови морського походження, щоб візуалізувати зв’язок між безперервними змінними.

Діаграма розкиду:

  • Він показує зв’язок між двома неперервними змінними, просто побудувавши всі точки даних.

Scatter Plot

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Лінійний графік:

  • Представляє зв’язок між змінними як безперервну функцію.

Line Plot

seaborn.relplot(kind = 'line',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Більше функцій:

Можливо, ви помітили, що в усіх функціях побудови графіка ми використовуємо максимум дві змінні на графік, але що, якщо ми хочемо ввести більше змінних у нашу візуалізацію? На щастя, Seaborn подбав про це:

Відтінок:

  • Використовуючи відтінок, ми можемо ввести третю змінну, яка є категоричною для нашої візуалізації за допомогою колірного кодування, це означає, що точки даних, які належать до однієї категорії цієї третьої змінної, матимуть однаковий колір.

Hue

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                hue  = 'variable_3')

Розмір:

  • Розмір подібний до відтінку, але використовує кодування розміру замість кодування кольору. Це означає, що точки даних, які належать до однієї категорії 3-ї змінної, матимуть однаковий унікальний розмір. Різні розміри означають різні категорії.

Size

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                size = 'variable_3',
                sizes = [50, 100])

Стиль:

  • Практично те саме, що Hue і Size. Це означає, що точки даних, які належать до однієї категорії 3-ї змінної, матимуть однаковий унікальний стиль. Стиль точки може бути крапкою, зірочкою, хрестиком, трикутником… ми називаємо їх маркерами.

Style

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                style = 'variable_3',
                markers = ['X', '*'])

Ми також можемо ввести нову категоріальну змінну, використовуючи множинні графіки, кожен графік належить до категорії з категоріальної змінної категорії:

Col:

Створить багато фігур горизонтально щодо категорій 3-ї змінної.

Col

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                col  = 'variable_3')

Рядок:

Створить багато фігур по вертикалі щодо категорій третьої змінної.

Row

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                row  = 'variable_3')

Ми також можемо використовувати Hue і Size на одному графіку, щоб представити 4 змінні, або навіть Hue, Style і Col, щоб використовувати 5 змінних на одному графіку! Ми можемо використовувати до 7 змінних (змінна 1, змінна 2, відтінок, розмір, стиль, стовпець, рядок) на одному графіку, але це дасть нам дуже заряджений графік, який буде таким безладним і надзвичайно важким для інтерпретації, іноді не взагалі інформативно.

Hue & Size

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                hue  = 'variable_3',
                size = 'variable_4')

Висновок:

У цій публікації ми дізналися про seaborn, його 3 категорії функцій побудови: категорійну, розподільну та реляційну, і ми пояснили кожну функцію побудови для кожної категорії разом із кодом Python.

Відвідайте наш Data Science Bootcamp, щоб дізнатися більше про цю тему!


Career Services background pattern

Кар'єрні послуги

Contact Section background image

Давайте залишатися на зв'язку

Code Labs Academy © 2024 Всі права захищені.