Заголовки и метки осей в Seaborn: добавление и настройка

В этом руководстве вы узнаете, как добавлять заголовки и метки осей к графикам Seaborn. Seaborn построен на базе Matplotlib, что позволяет добавлять и настраивать заголовки с высокой детализацией. Также, Seaborn делает добавление и настройку заголовков или меток осей простыми и интуитивно понятными.

В конце этого руководства:

  • Как добавлять и настраивать заголовки для визуализаций Seaborn

  • Как добавлять и настраивать метки осей X и Y в визуализациях Seaborn

  • Как добавлять и настраивать заголовки для графиков FacetGrid (многосюжетных) в Seaborn

Оглавление

Как добавить заголовок к карте Seaborn

Чтобы добавить заголовок к диаграмме Seaborn, можно использовать метод .set_title(). Этот метод позволяет добавить и настроить заголовок. Внутри Seaborn использует Matplotlib, что позволяет в значительной степени кастомизировать заголовки.

Давайте посмотрим, как можно использовать метод .set_title() для добавления простого заголовка к графику:

# Добавление заголовка

import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'

sns.barplot(data=df, x='day', y='tip', ci=None).set_title('Sample Title')  # Создание столбчатой диаграммы (barplot) и установка заголовка
plt.show()  # Отображение графика

По умолчанию, Seaborn не добавляет большого стиля к вашему заголовку. Однако настроить заголовок под нужный вам стиль довольно просто. Давайте рассмотрим, как это сделать.

Как настроить заголовок на карте Seaborn

Чтобы настроить заголовки в Seaborn, вы можете использовать параметр fontdict= метода .set_title(). Как следует из названия, метод позволяет передать словарь, который управляет шрифтом заголовка. Рассмотрим, как мы можем настроить размер шрифта, начертание и цвет заголовка.

Давайте начнем с изучения того, как мы можем настроить размер шрифта заголовка в графике Seaborn

Настройте размер шрифта заголовка на карте Seaborn

Чтобы настроить размер шрифта заголовка, можно передать ключ 'fontsize' или 'size' в параметр fontdict= .

Размер шрифта может быть задан в пикселях или определён по названию. Seaborn поддерживает следующие размеры шрифта: xx-small, x-small, small, medium, large, x-large, xx-large, larger, smaller, None.

Давайте рассмотрим, как можно изменить размер шрифта заголовка в Seaborn на практическом примере:

# Настройка размера шрифта заголовка

import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'

chart = sns.barplot(data=df, x='day', y='tip', ci=None)  # Создание столбчатой диаграммы (barplot) и сохранение объекта Axes в переменную chart
chart.set_title('Sample Title', fontdict={'size': 30})  # Установка заголовка графика с заданным размером шрифта
plt.show()  # Отображение графика

Обратите внимание, как мы присваиваем диаграмму переменной chart, а затем применяем метод .set_title() к этому объекту. Мы также могли бы просто объединить методы, как делали раньше. Однако это позволяет нам позже легче настраивать метки осей.

В следующем разделе вы узнаете, как настроить толщину шрифта заголовка в диаграмме

Настройте толщину шрифта заголовка в таблице Seaborn

Для изменения толщины шрифта заголовка вы можете использовать ключ 'fontweight' или 'weight' в параметре fondtdict= .

Толщина шрифта может быть любой из следующих опций: 'normal', 'bold', 'heavy', 'light', 'ultrabold' и 'ultralight'. По умолчанию, как следует из названия, Seaborn будет использовать 'normal'.

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

# Настройка толщины шрифта заголовка

import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'

chart = sns.barplot(data=df, x='day', y='tip', ci=None)  # Создание столбчатой диаграммы (barplot) и сохранение объекта Axes в переменную chart
chart.set_title('Sample Title', fontdict={'size': 30, 'weight': 'bold'})  # Установка заголовка графика с заданным размером и жирностью шрифта
plt.show()  # Отображение графика

Мы видим, что текст был выделен жирным шрифтом. Мы также используем больший размер шрифта, который применили ранее.

В следующем разделе вы узнаете, как настроить цвет шрифта заголовка в графике Seaborn.

Настройте цвет шрифта заголовка на карте Seaborn

Чтобы настроить толщину шрифта заголовка, вы можете использовать ключ 'weight' в параметре fondtdict= .

Поскольку Seaborn использует Matplotlib в качестве основы, у вас есть возможность использовать любые из множества цветовых опций, доступных в Matplotlib. Matplotlib предлагает множество различных цветовых опций: например, вы можете использовать любое значение RGB (например, (0.1, 0.1, 0.1)) или любое значение HEX (например, '#0f0f0f').

Аналогично, вы можете использовать именованные цвета, предоставляемые Matplotlib, такие как 'b' для синего, или названия цветов CSS4, такие как 'aquamarine'.

Давайте посмотрим, как мы можем изменить цвет шрифта на 'grey' в заголовке:

# Настройка цвета шрифта заголовка

import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'

chart = sns.barplot(data=df, x='day', y='tip', ci=None)  # Создание столбчатой диаграммы (barplot) и сохранение объекта Axes в переменную chart
chart.set_title('Sample Title', fontdict={'size': 30, 'weight': 'bold', 'color': 'grey'})  # Установка заголовка графика с заданным размером, жирностью и цветом шрифта
plt.show()  # Отображение графика

В следующем разделе вы узнаете о некоторых других параметрах настройки шрифтов заголовков в Seaborn

Другие параметры настройки шрифтов заголовков в Seaborn

Seaborn предоставляет множество разных опций для настройки шрифтов заголовков. Например, вы можете настроить вращение с помощью ключа 'rotation' и цвет фона с помощью ключа 'backgroundcolor' в параметре fontdict= .

Таблица ниже показывает различные варианты шрифта для заголовков в Seaborn.

Свойство
Описание
Тип значения

alpha

Прозрачность вашего заголовка

float

backgroundcolor

Цвет фона вашего заголов

any matplotlib color

bbox

Ограничивающая рамка текста

Rectangle prop dict plus key ‘pad’ which is a pad in points

clip_box

Ящик обрезки заголов

a matplotlib.transform.Bbox instance

clip_on

Использовать ли художнику клипп

bool

clip_path

Путь к машинкам для стрижки

a Path instance and a Transform instance, a Patch

color

Цвет текста

any matplotlib color

family

Семейство шрифтов, которое следует использовать

'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'

fontproperties

Различные свойства шрифта Matplotlib

FontProperties

horizontalalignment or ha

Горизонтальное выравнивание текста

'center', 'right', 'left'

label

Метка текста

any string

linespacing

Интервал между строками, который следует использовать

float

multialignment

Как выровнять текст

'center', 'right', 'left'

name or fontname

Название шрифта

string e.g., 'Times New Roman'

picker

Выбор художника

None, float, boolean

position

The specific position to place the text

(x, y)

rotation

Поворот, применяемый к тексту

angle in degrees, 'vertical', 'horizontal'

size or fontsize

Размер шрифта, который следует использовать

size in points or relative size

style or fontstyle

Стиль шрифта, который следует использовать

'normal', 'italic', 'oblique'

text

Текст для включения

string or anything printable with ‘%s’ conversion

transform

Любые значения Matplotlib Transform

Transform subclass

variant

Вариант, который следует применить к вашему тексту

'normal', 'small-caps'

verticalalignment or va

Вертикальное выравнивание текста

'center', 'top', 'bottom', 'baseline'

visible

Видно ли название или нет

bool

weight or fontweight

Плотность шрифта вашего текста

'normal', 'bold', 'heavy', 'light', 'ultrabold', 'ultralight'

x, y

Положение текста по осям x и y

float

zorder

Z-порядок текста

any number

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

Как добавлять и настраивать метки осей в диаграммах Seaborn

В Seaborn также легко добавлять и настраивать метки осей. Мы можем добавить метки для оси x и оси y, используя методы .set_xlabel() и .set_ylabel() соответственно. Поскольку они возвращают объекты Text, аналогично установке заголовков, мы можем применять параметр fontdict=, как и раньше.

Посмотрим, как добавить и настроить подписи осей в Seaborn:

# Добавление меток оси y и оси x
import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'
chart = sns.barplot(data=df, x='day', y='tip', ci=None)  # Создание столбчатой диаграммы (barplot) и сохранение объекта Axes в переменную chart
chart.set_title('Sample Title', fontdict={'size': 30, 'weight': 'bold'})  # Установка заголовка графика с заданным размером и жирностью шрифта
chart.set_xlabel('Day of Week', fontdict={'size': 15})  # Установка метки оси x с заданным размером шрифта
chart.set_ylabel('Tip Amount', fontdict={'size': 15})  # Установка метки оси y с заданным размером шрифта
plt.show()  # Отображение графика

Мы видим, что метки оси x и оси y были изменены и настроены.

Если вы просто хотите добавить заголовки и метки осей, вы можете использовать метод .set(). Это позволяет просто передавать строки для заголовка и меток осей. Давайте посмотрим, как это выглядит:

# Добавление меток более простым способом
import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'
sns.barplot(data=df, x='day', y='tip', ci=None).set(title='Sample Title', xlabel='Day', ylabel='Tip')  # Создание столбчатой диаграммы (barplot) и установка заголовка и подписей осей с помощью метода set()
plt.show()  # Отображение графика

Мы видим, что это более простой способ описания ваших данных, но он не предоставляет такой же гибкости, как методы .set_title(), set_xlabel(), и .set_ylabel() .

Как добавлять и настраивать заголовки для графиков Seaborn FacetGrid

При работе с графиками Seaborn FacetGrid добавление заголовков осуществляется немного иначе. Один из способов создания таких графиков заключается в передаче дополнительных переменных в параметры col= (столбец) или row= (ряд). Это создает дополнительные подграфики на основе одних и тех же данных.

Как добавить заголовок к графику Seaborn FacetGrid

Давайте посмотрим, как добавить заголовок к нашему графику FacetGrid. В приведенном ниже коде обратите внимание на две строки. Используя .subplots_adjust(), мы регулируем интервал, чтобы заголовку было немного больше места. Этот процесс немного эвристический и требует проб и ошибок, чтобы найти оптимальный

Кроме того, мы используем метод .fig.suptitle(), чтобы добавить заголовок ко всей фигуре (а не к отдельному графику). Давайте посмотрим, как это выглядит:

# Добавление заголовка к графику FacetGrid
import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'
scatter = sns.relplot(data=df, x='total_bill', y='tip', col='sex', row='smoker')  # Создание графика relplot, разделенного на столбцы по 'sex' и строки по 'smoker'

scatter.fig.subplots_adjust(top=0.92)  # Регулировка расположения подграфиков для размещения заголовка
scatter.fig.suptitle('Tips Broken Out by Gender', size=15)  # Добавление общего заголовка для всего графика
scatter.set_axis_labels('Total Bill Amount ($)', 'Tip Amount ($)')  # Установка подписей для осей x и y
plt.show()  # Отображение графика

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

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

Чтобы добавить заголовки к подграфикам в Seaborn, мы можем использовать метод .set_titles(). Обратите внимание, что этот метод ссылается на заголовки, а не на один заголовок.

Метод работает путем передачи шаблонов для столбцов и строк подграфиков, которые ссылаются либо на col_name, либо на row_name, что позволяет использовать переменную столбца или строки.

Давайте рассмотрим пример добавления заголовков к подграфикам в графиках Seaborn:

# Добавление заголовков к подграфикам

import seaborn as sns  # Импорт библиотеки seaborn для визуализации данных
import matplotlib.pyplot as plt  # Импорт библиотеки matplotlib для построения графиков

df = sns.load_dataset('tips')  # Загрузка набора данных 'tips'
scatter = sns.relplot(data=df, x='total_bill', y='tip', col='sex', row='smoker')  # Создание графика relplot, разделенного на столбцы по 'sex' и строки по 'smoker'

scatter.fig.subplots_adjust(top=0.92)  # Регулировка расположения подграфиков для размещения заголовка
scatter.fig.suptitle('Tips Broken Out by Gender', size=15)  # Добавление общего заголовка для всего графика
scatter.set_axis_labels('Total Bill Amount ($)', 'Tip Amount ($)')  # Установка подписей для осей x и y
scatter.set_titles(col_template='{col_name} Visitors', row_template='Smoker: {row_name}', size=12)  # Установка заголовков для подграфиков на основе столбцов и строк
plt.show()  # Отображение графика

Во приведенном выше примере, мы присоединили название столбца к строке ' Посетители', что позволило изменить заголовок на Мужчины Посетители и Женщины Посетители. Аналогично, мы добавили описательный ярлык к столбцу Курильщики.

Добавление заголовков к подграфикам в сетке Seaborn

В приведенном выше примере мы смогли добавить описательные метки к подграфикам в Seaborn. Обратите внимание, что мы не указываем точное название, а используем метки, основанные на разбивке по шаблону.

Часто задаваемые вопросы

Как добавить заголовок к карте Seaborn?

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

Как можно настроить заголовки в картах Seaborn (например, размер, вес и цвет)?

Чтобы настроить заголовки в графиках Seaborn, можно передать словарь с настройками в параметр fontdict метода .set_title(). Словарь принимает ключи, такие как «weight», «size» и «color».

Как изменить подписи осей в диаграммах Seaborn?

Чтобы изменить подписи осей в графиках Seaborn, вы можете использовать методы .set_xlabel() и .set_ylabel(). Эти методы позволяют задавать строки для установки подписи. Вы также можете настроить подписи, передав словарь в параметр fontdict метода. Словарь принимает ключи, такие как 'weight', 'size' и 'color'.

Заключение

В этом руководстве вы узнали, как добавлять и настраивать заголовки и метки осей в визуализациях Seaborn. Seaborn упрощает создание красивых визуализаций. Точно так же легко добавлять и настраивать заголовки и метки осей. Поскольку Seaborn использует Matplotlib под капотом, у вас есть доступ ко всем параметрам настройки, которые предлагает эта библиотека.

Сначала вы научились добавлять заголовки к графикам Seaborn и настраивать их с помощью настроек Matplotlib. Затем вы узнали, как добавлять и настраивать метки осей в Seaborn. Наконец, вы научились настраивать заголовки в подграфиках Seaborn в FacetGrid.

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

Чтобы узнать больше о связанных темах, ознакомьтесь с ресурсами ниже

  • Как установить Seaborn в Python (Исправление: нет модуля с именем seaborn)

  • Настройте местоположение, метки, текст и т. д. Seaborn Legends.

  • Seaborn despine: как работать с шипами и удалять их

Last updated