Поиск…


Функция Boxplot

Matplotlib имеет собственную реализацию boxplot . Соответствующие аспекты этой функции заключаются в том, что по умолчанию в квадратике показана медиана (процентиль 50%) с красной линией. Коробка представляет Q1 и Q3 (процентили 25 и 75), а усы дают представление о диапазоне данных (возможно, при Q1 - 1,5 IQR; Q3 + 1,5 IQR, IQR - межквартильный диапазон, но в этом нет подтверждения). Также обратите внимание, что образцы, выходящие за этот диапазон, показаны как маркеры (они называются летчиками).

ПРИМЕЧАНИЕ. Не все реализации boxplot соответствуют тем же правилам. Возможно, наиболее распространенная диаграмма boxplot использует бакенбарды для представления минимума и максимума (что делает листовки несуществующими). Также обратите внимание , что этот участок иногда называют коробчатыми и усами-графиком и схемой коробчатых и-усов.

Следующий рецепт показывает некоторые из вещей, которые вы можете сделать с текущей реализацией matplotlib boxplot:

import matplotlib.pyplot as plt
import numpy as np

X1 = np.random.normal(0, 1, 500)
X2 = np.random.normal(0.3, 1, 500)

# The most simple boxplot
plt.boxplot(X1)
plt.show()

# Changing some of its features
plt.boxplot(X1, notch=True, sym="o") # Use sym="" to shown no fliers; also showfliers=False
plt.show()

# Showing multiple boxplots on the same window
plt.boxplot((X1, X2), notch=True, sym="o", labels=["Set 1", "Set 2"])
plt.show()

# Hidding features of the boxplot
plt.boxplot(X2, notch=False, showfliers=False, showbox=False, showcaps=False, positions=[4], labels=["Set 2"])
plt.show()

# Advanced customization of the boxplot
line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()

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

По умолчанию matplotlib boxplot

  1. По умолчанию matplotlib boxplot

Изменение некоторых функций boxplot с использованием аргументов функции

  1. Изменение некоторых функций boxplot с использованием аргументов функции

Несколько ящиков в одном окне графика

  1. Несколько ящиков в одном окне графика

Хранение некоторых функций boxplot

  1. Хранение некоторых функций boxplot

Расширенная настройка ящика с помощью реквизита

  1. Расширенная настройка ящика с помощью реквизита

Если вы намереваетесь выполнить некоторую расширенную настройку вашего boxplot, вы должны знать, что создаваемые вами реквизиты (например):

line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()

... ссылаются главным образом (если не все) на объекты Line2D . Это означает, что доступны только аргументы, доступные в этом классе. Вы заметите наличие таких ключевых слов, как whiskerprops , boxprops , flierprops и capprops . Это те элементы, которые вам нужны для создания реквизита для дальнейшей настройки.

ПРИМЕЧАНИЕ. Дальнейшая настройка boxplot с использованием этой реализации может оказаться сложной задачей. В некоторых случаях использование других элементов matplotlib, таких как патчи для создания собственной коробки, может быть выгодным (например, значительные изменения в элементе box).



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow