Як намалювати кілька ліній у seaborn (з прикладом)


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

 import seaborn as sns

sns. lineplot (data=df[[' col1 ', ' col2 ', ' col3 ']]

У цьому конкретному прикладі буде створено контур із трьома різними лініями.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: малювання кількох ліній у Seaborn

Припустімо, що ми маємо такий фрейм даних pandas, який містить інформацію про продажі, здійснені чотирма різними роздрібними магазинами (A, B, C і D) протягом восьми років поспіль:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' year ': [1, 2, 3, 4, 5, 6, 7, 8],
                   ' A ': [10, 12, 14, 15, 15, 14, 13, 18],
                   ' B ': [18, 18, 19, 14, 14, 11, 20, 28],
                   ' C ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' D ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

   year ABCD
0 1 10 18 5 11
1 2 12 18 7 8
2 3 14 19 7 10
3 4 15 14 9 6
4 5 15 14 12 6
5 6 14 11 9 5
6 7 13 20 9 9
7 8 18 28 4 12

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

 import seaborn as sns

#plot sales of each store as a line
sns. lineplot (data=df[[' A ',' B ',' C ',' D ']])

багатолінійний морський сюжет

Кожен рядок представляє значення одного з чотирьох магазинів.

Легенда у верхньому лівому куті вказує, який колір відповідає якому магазину.

Зауважте, що ми також можемо використовувати аргумент palette , щоб вказати власні кольори для використання на графіку:

 import seaborn as sns

#plot sales of each store with custom colors
sns. lineplot (data=df[[' A ', ' B ', ' C ', ' D ']], palette=[' red ', ' blue ', ' purple ', ' pink ']) 

Зверніть увагу, що кольори рядків тепер відповідають чотирьом кольорам, які ми вказали в аргументі палітри .

Якщо ви хочете, щоб кожна з ліній була суцільною, ви можете використати функцію pandas melt() , щоб перетворити DataFrame у довгий формат , а потім використати такий синтаксис, щоб намалювати лінії:

 import seaborn as sns

#plot sales of each store with custom colors
sns. lineplot (x=' year ', y=' value ', hue=' variable ', 
             data=pd. melt (df,[' year ']),
             palette=[' red ', ' blue ', ' purple ', ' pink '])

Тепер кожна з ліній суцільна, а не має власного стилю.

Примітка . Якщо у вас виникли труднощі з імпортом seaborn у блокнот Jupyter, вам, можливо, доведеться спочатку запустити команду %pip install seaborn .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в Seaborn:

Як додати право власності на ділянки Seaborn
Як змінити розмір шрифту в графіках Seaborn
Як відкоригувати розмір фігури сюжету Seaborn

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *