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


Чтобы добавить заголовок к одному морскому сюжету, вы можете использовать функцию .set() .

Например, вот как добавить заголовок к блочной диаграмме:

sns.boxplot(data=df, x='var1', y='var2').set (title='Title of Plot')

Чтобы добавить общий заголовок к графику граней моря, вы можете использовать функцию .suptitle() .

Например, вот как добавить общий заголовок к повторной диаграмме:

#define relplot
rel = sns.relplot (data=df, x='var1', y='var2', col='var3')
#add overall title to replot
rel. fig.suptitle('Overall Title')

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

Пример 1. Добавление заголовка к одному морскому участку

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

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

#create fake data
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
 'assists': [5, 7, 7, 9, 12, 9, 9, 4],
 'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B']})

#create boxplot
sns.boxplot(data=df, x='team', y='points').set (title='Points by Team') 

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

sns.scatterplot(data=df, x='points', y='assists').set (title='Points vs. Assists') 

А следующий код показывает, как добавить заголовок к регплоту Seaborn:

sns.regplot (data=df, x='points', y='assists').set (title='Points vs. Assists') 

Пример 2. Добавление общего заголовка к графику лица Seaborn

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

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

#create fake data
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
 'assists': [5, 7, 7, 9, 12, 9, 9, 4],
 'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B']})

#create relplot
rel = sns.relplot (data=df, x='points', y='assists', col='team')

#add overall title
rel. fig.suptitle('Stats by Team')

Мы также можем использовать аргумент subplots_adjust() , чтобы переместить общий заголовок немного выше, чтобы он не мешал отдельным графикам:

#create relplot
rel = sns.relplot (data=df, x='points', y='assists', col='team')

#move overall title up
rel. fig.subplots_adjust (top= .8 )

#add overall title
rel. fig.suptitle('Stats by Team') 

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

Как настроить размер рисунка на графике Seaborn
Как изменить положение легенды в Seaborn
Как изменить метки осей на графике Seaborn