Ящик с Усами в Matplotlib: Обзор, Настройка Цвета, Оранжевая Линия и Продвинутые Приемы

Ящик с усами (boxplot), также известный как диаграмма размаха, является мощным инструментом визуализации данных, который позволяет быстро оценить распределение выборки, выявить выбросы и сравнить несколько наборов данных. Matplotlib предоставляет гибкие возможности для создания и настройки ящиков с усами, позволяя адаптировать их под конкретные аналитические задачи.

Основы Ящика с Усами в Matplotlib

Что такое ящик с усами и для чего он нужен

Ящик с усами отображает следующие характеристики распределения:

  • Медиана (центральная линия ящика).

  • Первый квартиль (25-й процентиль) и третий квартиль (75-й процентиль), образующие границы ящика.

  • Усы, простирающиеся до минимального и максимального значений в пределах 1.5 межквартильных размахов (IQR) от границ ящика.

  • Выбросы, отображаемые как отдельные точки за пределами усов.

Ящики с усами полезны для:

  • Сравнения распределений разных групп.

  • Выявления асимметрии в данных.

  • Обнаружения выбросов.

Создание базового ящика с усами: первый пример кода

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randn(100, 5) # 5 наборов данных

fig, ax = plt.subplots()
ax.boxplot(data)
ax.set_title('Базовый Ящик с Усами')
plt.show()

Настройка Цвета: Оранжевая Линия и Другие Элементы

Изменение цвета медианы и усов: подробная инструкция

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

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randn(100) # Один набор данных

fig, ax = plt.subplots()

# Создаем boxplot и получаем словарь с элементами
bplot = ax.boxplot(data, patch_artist=True)

# Меняем цвет медианы на оранжевый
for median in bplot['medians']:
    median.set(color='orange', linewidth=2)

# Меняем цвет усов
for whisker in bplot['whiskers']:
    whisker.set(color='orange', linewidth=1)

ax.set_title('Ящик с Усами с Оранжевой Медианой и Усами')
plt.show()

Ключевые моменты:

  • patch_artist=True позволяет заливать ящик цветом.

  • bplot['medians'], bplot['whiskers'] возвращают списки объектов линий медиан и усов.

  • set() используется для изменения свойств линий (цвет, толщина и т.д.).

    Реклама

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

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randn(100)

fig, ax = plt.subplots()
bplot = ax.boxplot(data, patch_artist=True)

# Цвет выбросов
for flier in bplot['fliers']:
    flier.set(marker='o', color='red', alpha=0.5) #Круглые маркеры, красный цвет, прозрачность

# Заливка ящика цветом
for patch in bplot['boxes']:
    patch.set_facecolor('lightblue')

ax.set_title('Кастомизированный Ящик с Усами')
plt.show()

Продвинутая Кастомизация Ящика с Усами

Изменение стиля усов и медианы (толщина, тип линии)

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randn(100)

fig, ax = plt.subplots()
bplot = ax.boxplot(data)

# Стиль медианы
for median in bplot['medians']:
    median.set(linestyle='--', linewidth=2, color='green')

# Стиль усов
for whisker in bplot['whiskers']:
    whisker.set(linestyle=':', linewidth=1.5, color='purple')

ax.set_title('Ящик с Усами с Измененным Стилем')
plt.show()

Добавление меток и заголовков: улучшаем визуальное восприятие

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randn(100)

fig, ax = plt.subplots()
ax.boxplot(data, labels=['Данные']) # Метка для ящика
ax.set_title('Ящик с Усами с Метками')
ax.set_ylabel('Значения')
plt.show()

Практические Примеры и Советы

Создание ящика с усами с несколькими группами данных

import matplotlib.pyplot as plt
import numpy as np

data1 = np.random.randn(100)
data2 = np.random.rand(100)
data = [data1, data2]

fig, ax = plt.subplots()
ax.boxplot(data, labels=['Группа 1', 'Группа 2'])
ax.set_title('Сравнение Групп')
plt.show()

Советы по выбору цветов и стилей для ваших графиков

  • Используйте цветовую палитру, соответствующую вашему бренду или тематике данных.

  • Не перегружайте график излишними деталями. Простота улучшает восприятие.

  • Учитывайте цветовосприятие вашей аудитории (например, дальтонизм).

  • Экспериментируйте с разными стилями линий и маркеров для выделения важных элементов.

Заключение и Дальнейшие Шаги

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


Добавить комментарий