Matplotlib - ножки boxplot имеют минимальное и максимальное значения - PullRequest
0 голосов
/ 09 октября 2018

У меня есть словарь, в котором для каждого идентификатора пользователя хранятся следующие значения:

  • Мин.
  • Нижний квартиль
  • Медиана
  • Верхний квартиль
  • Макс.

. При построении блокпоста я бы хотел, чтобы минимальные и максимальные значения из словаря использовались в нижних частях графика блокплотов.На данный момент он отображает их как выбросы, и я хотел бы, чтобы они были изображены как часть ножек коробчатой ​​диаграммы.

Мой код:

for ID in Data:
    #Min
    Data1[ID].append(10)
    #LQ
    Data1[ID].append(20)
    #Median
    Data1[ID].append(30)
    #UQ
    Data1[ID].append(40)
    #Max
    Data1[ID].append(50)
#Plot
fig, ax = plt.subplots()
ax.boxplot(Data1.values())

1 Ответ

0 голосов
/ 09 октября 2018

Ноги называются усы, и вы можете управлять ими, установив параметр whis в вызове boxplot.В вашем случае вы, вероятно, захотите установить значение 'range'

ax.boxplot(Data1.values(), whis='range')

, как указано в документации :

whis: float, sequence илиСтрока (по умолчанию = 1,5). В качестве числа с плавающей точкой определяет охват усов до первого и третьего квартилей.Другими словами, где IQR - межквартильный диапазон (Q3-Q1), верхний усик простирается до последнего уровня, меньшего, чем Q3 + whis * IQR).Точно так же нижний усик простирается до первого значения больше, чем Q1 - тх * IQR.Помимо усов, данные считаются выбросами и изображаются в виде отдельных точек.Установите неоправданно высокое значение, чтобы усы показывали минимальное и максимальное значения.В качестве альтернативы, установите для этого возрастающую последовательность процентилей (например, [5, 95]), чтобы установить усы на конкретные процентили данных.Наконец, wh может быть строкой 'range', чтобы заставить усы переходить к минимуму и максимуму данных.

Обратите внимание, что вы строите не блокпосты ваших фактических данных, а блокпосты изсводную статистику вы предоставляете.Это обычно отличается.Если вы хотите использовать сводную статистику для построения коробчатого графика исходных данных, взгляните на этот пример и метод matplotlib bxp.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...