Matplotlib: гистограмма плотности и её площадь
Гистограмма оценивает распределение данных по интервалам. При density=True высота столбца выражает плотность: вероятность интервала оценивают площадью столбца, то есть высотой, умноженной на ширину.
Пример
import matplotlib.pyplot as plt
data = [1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5]
fig, ax = plt.subplots()
ax.hist(data, bins=[0.5, 1.5, 2.5, 3.5, 4.5, 5.5],
density=True, edgecolor="black")
ax.set_xlabel("Значение")
ax.set_ylabel("Плотность")
plt.show()Здесь ширина каждого интервала равна1, поэтому связь высоты и доли наблюдений особенно проста. При другой ширине сумма высот не обязана быть1, хотя общая площадь нормированной гистограммы равна1 в пределах выбранного диапазона.
Не путайте способы визуализации
Гистограмма плотности остаётся набором столбцов. Она не является автоматически гладкой оценкой KDE. Для дискретных категорий часто понятнее явно показать количество или долю значений.
Проверка результата
- Сверьте, сколько наблюдений попало в каждый bin.
- Сравните несколько разумных разбиений: границы могут менять впечатление.
- Укажите единицы X; плотность имеет обратные к ним единицы.
- Не интерпретируйте небольшой случайный пик как доказанную закономерность.
Обрабатывайте пропуски и бесконечные значения до построения по правилам вашей задачи. Подписи осей и объём выборки помогают читать график точнее, чем декоративное сглаживание.