Как создать диаграмму с областями в Seaborn (с примерами)


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

import matplotlib.pyplot as plt
import seaborn as sns

#set seaborn style
sns.set_theme ()

#create seaborn area chart
plt.stackplot (df.x , df.y1 , df.y2 , df.y3 )

В следующих примерах показано, как использовать этот синтаксис на практике.

Пример 1: создание базовой диаграммы с областями в Seaborn

В следующем коде показано, как создать базовую диаграмму с областями в Seaborn:

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

#set seaborn style
sns.set_theme ()

#define DataFrame
df = pd.DataFrame({'period': [1, 2, 3, 4, 5, 6, 7, 8],
 'team_A': [20, 12, 15, 14, 19, 23, 25, 29],
 'team_B': [5, 7, 7, 9, 12, 9, 9, 4],
 'team_C': [11, 8, 10, 6, 6, 5, 9, 12]})

#create area chart
plt.stackplot (df.period , df.team_A , df.team_B , df.team_C )

На оси X отображается переменная периода, а на оси Y — значения для каждой из трех команд с течением времени.

Пример 2: создание пользовательской диаграммы с областями в Seaborn

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

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

#set seaborn style
sns.set_theme ()

#define DataFrame
df = pd.DataFrame({'period': [1, 2, 3, 4, 5, 6, 7, 8],
 'team_A': [20, 12, 15, 14, 19, 23, 25, 29],
 'team_B': [5, 7, 7, 9, 12, 9, 9, 4],
 'team_C': [11, 8, 10, 6, 6, 5, 9, 12]})

#define colors to use in chart
color_map = ['red', 'steelblue', 'pink']

#create area chart
plt.stackplot (df.period , df.team_A , df.team_B , df.team_C ,
 labels=['Team A', 'Team B', 'Team C'],
 colors=color_map)

#add legend
plt.legend(loc='upper left')

#add axis labels
plt.xlabel('Period')
plt.ylabel('Points Scored')

#display area chart
plt.show() 

Обратите внимание, что аргумент colors принимает имена цветов вместе с шестнадцатеричными кодами цветов.

Дополнительные ресурсы

Следующие уроки объясняют, как создавать другие распространенные графики в Seaborn:

Как создать график временных рядов в Seaborn
Как создать круговую диаграмму в Seaborn
Как создать барплот в Seaborn