У меня есть данные в виде списка чисел с плавающей запятой, и я хочу построить их в виде гистограммы. Функция Hist() отлично справляется с построением абсолютной гистограммы. Однако я не могу понять, как представить его в формате относительной частоты - я хотел бы иметь его в виде дроби или, в идеале, в процентах по оси Y.
Вот код:
fig = plt.figure()
ax = fig.add_subplot(111)
n, bins, patches = ax.hist(mydata, bins=100, normed=1, cumulative=0)
ax.set_xlabel('Bins', size=20)
ax.set_ylabel('Frequency', size=20)
ax.legend
plt.show()
Я думал, что аргумент normed=1 подойдет, но он дает слишком большие дроби, а иногда и больше 1. Похоже, они также зависят от размера ячейки, как если бы они не нормализуется по размеру корзины или что-то в этом роде. Тем не менее, когда я устанавливаю cumulative=1, в сумме получается 1. Итак, в чем подвох? Кстати, когда я ввожу те же данные в Origin и рисую их, он дает мне совершенно правильные дроби. Спасибо!