Библиотека Seaborn

Как изменить положение легенды в Seaborn

Как изменить положение легенды в Seaborn
В: Библиотека Seaborn

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

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

plt.legend(loc='upper right')

Расположение по умолчанию — «лучшее» — именно здесь Matplotlib автоматически находит место для легенды в зависимости от того, где он избегает охвата каких-либо точек данных.

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

  • верхний правый
  • верхний левый
  • нижний левый
  • Нижний правый
  • Правильно
  • центр слева
  • центр справа
  • нижний центр
  • верхний центр
  • центр

Вы также можете использовать аргумент bbox_to_anchor() , чтобы разместить легенду за пределами графика. Например, вы можете использовать следующий синтаксис для размещения легенды в правом верхнем углу за пределами графика:

plt.legend(bbox_to_anchor=( 1.05 , 1 ), loc='upper left', borderaxespad= 0 )

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

Пример 1: изменение положения легенды внутри графика 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 scatterplot
sns.scatterplot(data=df, x='points', y='assists', hue='team')

#place legend in center right of plot
plt.legend(loc='center right', title='Team') 

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

#create scatterplot
sns.scatterplot(data=df, x='points', y='assists', hue='team')

#place legend in upper left of plot
plt.legend(loc='upper left', title='Team') 

Пример 2: изменить положение легенды за пределами участка Seaborn

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

Например, вот как разместить легенду за пределами верхнего правого угла графика:

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 scatterplot
sns.scatterplot(data=df, x='points', y='assists', hue='team')

#place legend outside top right corner of plot
plt.legend(bbox_to_anchor=( 1.02 , 1 ), loc='upper left', borderaxespad= 0 ) 

А вот как разместить легенду за пределами нижнего правого угла графика:

#create scatterplot
sns.scatterplot(data=df, x='points', y='assists', hue='team')

#place legend outside bottom right corner of plot
plt.legend(bbox_to_anchor=( 1.02 , 0.15 ), loc='upper left', borderaxespad= 0 ) 

Подробное объяснение аргумента bbox_to_anchor() см. в документации по matplotlib.

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

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

Еще от кодкамп
Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.