Как настроить (переопределить) выбросы (листовки) на поле в matplotlib? - PullRequest
0 голосов
/ 11 марта 2020

У меня есть некоторый набор точек данных, которые я сам удалил их выбросы, прежде чем строить их с помощью pl.boxplot (). Теперь, после их построения с помощью этой функции, я вижу несколько листовок на моем графике. Я не хочу удалять листовки, но включаю их в коробки. Как я могу это выяснить?

Boxplots

1 Ответ

1 голос
/ 11 марта 2020

Если вы просто хотите опустить , показывая выбросы, вы можете использовать showfliers аргумент plt.boxplot.

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

Обычно нижняя граница прямоугольника определяется на 25-м процентиле (Q1). Точно так же верхняя граница рамки определяется на 75-м процентиле (Q3). Разница между этими местоположениями определяется как межквартильный диапазон (IQR).

Верхний и нижний усы коробочного поля затем определяются как Q3 + 1,5 * IQR и Q1 - 1,5 * IQR. Любые точки за пределами усов классифицируются как выбросы. Таким образом, выбросы всегда будут выходить за рамки стандартного коробчатого графика.

Если вы включите sh, чтобы ваши «выбросы» были включены в блоки, вам придется разбить графические условные обозначения бокса. Один из способов сделать это - изменить процентили, которые определяют верхнюю и нижнюю часть поля. Если это то, чего вы хотите достичь, то есть план того, как это сделать, здесь . (Как правило, я бы не советовал нарушать графическое соглашение, может быть очень легко ввести читателя в заблуждение)

...