Как добавить названия в Matplotlib: Заголовок, Подзаголовок, Названия Осей

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

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

К концу этого урока вы узнаете:

  • Как добавить заголовки, подзаголовки и названия осей к вашему графику

  • Как стилизовать и расположить заголовки в Matplotlib

  • Как стилизовать заголовки индивидуально и глобально в Matplotlib

  • Как сбросить стили обратно к стилям по умолчанию в Matplotlib

Оглавление

Создание образца графика

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

Мы импортируем matplotlib.pyplot с использованием конвенции plt и загрузим некоторые образцы данных для визуализации наших данных.

# Загрузка образца графика в Matplotlib
import matplotlib.pyplot as plt

x = range(1, 11)
y = [10, 20, 15, 35, 40, 30, 50, 55, 75, 50]

plt.plot(x, y)
plt.show()

Это возвращает следующий график:

Добавление заголовка к графику Matplotlib

Добавление заголовка к графику в Matplotlib выполняется с помощью метода .title(). Этот метод позволяет передать строку, которая представляет собой заголовок, который вы хотите применить. Давайте посмотрим, как мы можем использовать этот метод, чтобы добавить заголовок "Заголовок Вашего Графика" к вашему графику:

# Добавление простого заголовка к нашему графику Matplotlib
import matplotlib.pyplot as plt

x = range(1, 11)
y = [10, 20, 15, 35, 40, 30, 50, 55, 75, 50]

plt.plot(x, y)

# Добавление заголовка к нашему графику
plt.title("Название вашей диаграммы")
plt.show()

Это возвращает следующее изображение:

Заголовок создан с использованием стандартных значений Matplotlib, которые выглядят достаточно просто. Мы можем легко управлять стилем, размером и позиционированием шрифтов с помощью Matplotlib. Об этом вы узнаете в следующем разделе.

Изменение размеров шрифта и позиционирования в заголовках Matplotlib

Matplotlib предоставляет вам невероятную гибкость в стилизации заголовка вашего графика с точки зрения размера, стиля и позиционирования (и многого другого). Давайте рассмотрим параметры, которые мы можем передать в метод .title(), чтобы стилизовать наш текст:

  • fontsize= управляет размером шрифта и принимает целое число или строку

  • loc= контролирует позиционирование текста

  • fontweight= управляет толщиной шрифта

  • style= управляет стилем шрифта

  • family= контролирует семейство шрифтов данного шрифта.

В официальной документации вы можете узнать о многих других атрибутах. Описанные выше представляют собой ключевые параметры, которые мы можем использовать для управления стилем.

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

# Добавление стиля к заголовку нашего графика
import matplotlib.pyplot as plt

x = range(1, 11)
y = [10, 20, 15, 35, 40, 30, 50, 55, 75, 50]

plt.plot(x, y)

# Добавление стилей с помощью параметров
plt.title(
    "Название вашей диаграммы",
    fontsize='large',  # Размер шрифта
    loc='left',  # Расположение заголовка (слева)
    fontweight='bold',  # Жирный шрифт
    style='italic',  # Курсив
    family='monospace'  # Моноширинный шрифт
)
plt.show()

Это возвращает следующий график:

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

Возможно, вам часто будет требоваться добавлять подзаголовки к графикам в Matplotlib. Хотя Matplotlib напрямую не предлагает метод для добавления подзаголовков, существует метод .suptitle(). Этот метод служит заголовком более высокого уровня. Затем мы можем использовать обычный заголовок в качестве подзаголовка.

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

# Добавление подзаголовка к нашему графику
import matplotlib.pyplot as plt

x = range(1, 11)
y = [10, 20, 15, 35, 40, 30, 50, 55, 75, 50]

plt.plot(x, y)

# Добавление заголовка и подзаголовка
plt.suptitle("Название вашей диаграммы")  # Заголовок
plt.title("Подзаголовок вашей диаграммы")  # Подзаголовок
plt.show()

Это возвращает следующее изображение:

Хотя это и официальный способ добавления подзаголовка к графику Matplotlib, он позволяет визуально представить подзаголовок.

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

Добавление меток осей в график Matplotlib

В этом разделе вы узнаете, как добавлять подписи к осям на ваши графики в Matplotlib. Подписи к осям предоставляют описательные заголовки к вашим данным, чтобы помочь вашим читателям понять, что передает ваша диаграмма.

Matplotlib обрабатывает стилизацию подписей осей таким же образом, как было описано выше. Это часть невероятной гибкости, которую предлагает Matplotlib.

Мы можем добавить названия осей, используя следующие методы:

  • .xlabel() добавляет метку оси X к вашему графику.

  • .ylabel() добавляет подпись к оси Y вашего графика

Давайте посмотрим, как мы можем добавить и стилизовать подписи осей в Matplotlib:

# Добавление подписей осей к графику Matplotlib
import matplotlib.pyplot as plt

x = range(1, 11)
y = [10, 20, 15, 35, 40, 30, 50, 55, 75, 50]

plt.plot(x, y)
plt.title("Название вашей диаграммы")  # Заголовок графика

# Добавление и стилизация подписей осей
plt.xlabel('Метка оси X', fontweight='bold')  # Подпись оси x
plt.ylabel('Название оси Y', style='italic', loc='bottom')  # Подпись оси y
plt.show()

Это возвращает следующее изображение:

Добавление заголовков к подзаголовкам Matplotlib

Matplotlib также очень удобен для добавления заголовков к подграфикам. Это можно сделать, обратившись к подграфику через его позицию осей и используя метод .set_title(). Точно так же, метод .set_title() работает, как и другие текстовые элементы.

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

import matplotlib.pyplot as plt

fig, ax = plt.subplots(1,2)
fig.tight_layout()

# Добавление заголовков к подграфикам
ax[0].set_title('Заголовок первого подграфика')
ax[1].set_title('Заголовок второго подграфика')

plt.show()

Это возвращает следующее изображение:

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

import matplotlib.pyplot as plt

fig, ax = plt.subplots(1,2)

# Добавление заголовков к подграфикам
ax[0].set_title('Заголовок первого подграфика')
ax[1].set_title('Заголовок второго подграфика')

# Добавление заголовка к фигуре
fig.suptitle('Заголовок фигуры')

fig.tight_layout()
plt.show()

Это возвращает следующее изображение:

Изменение стилей заголовков Matplotlib глобально

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

Давайте посмотрим, как это выглядит:

import matplotlib.pyplot as plt

x = range(1, 11)
y = [10, 20, 15, 35, 40, 30, 50, 55, 75, 50]

# Определение параметров
params = {
    'axes.titlesize': 16,
    'axes.labelsize': 12,
    'axes.titleweight':'bold'
}

# Обновление rcParams в Matplotlib
plt.rcParams.update(params)

plt.plot(x, y)
plt.title("Заголовок вашей диаграммы")
plt.xlabel('Метка оси x')
plt.ylabel('Заголовок оси y')
plt.show()

Это возвращает следующее изображение:

Если вы хотите узнать о различных доступных параметрах rcParams, вы можете вывести их на печать, используя метод plt.rcParams.keys()

Сброс стилей заголовков Matplotlib к значениям по умолчанию

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

Для восстановления значений их значений по умолчанию мы можем использовать метод .update() снова, передав в него значения по умолчанию:

# Восстановление значений по умолчанию для rcParams
plt.rcParams.update(plt.rcParamsDefault)

Заключение

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

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

Чтобы узнать больше о схожих темах, ознакомьтесь с учебным пособием ниже:

Last updated