Пропустить до содержимого

Как использовать pyplot hist?

[

Гистограммы в чистом Python

Когда вы готовитесь к построению гистограммы, проще всего не думать в терминах интервалов (корзин), а скорее сообщить, сколько раз каждое значение появляется (таблица частот). Для этой задачи хорошо подходит словарь Python:

# Необязательно отсортировано
a = (0, 1, 1, 1, 2, 3, 7, 7, 23)
def count_elements(seq) -> dict:
"""Подсчет элементов из `seq`"""
hist = {}
for i in seq:
hist[i] = hist.get(i, 0) + 1
return hist
counted = count_elements(a)
counted

В этом примере count_elements() возвращает словарь с уникальными элементами из последовательности в качестве ключей и их частотами в значениях. Внутри цикла for i in seq строка hist[i] = hist.get(i, 0) + 1 говорит “для каждого элемента последовательности увеличить его соответствующее значение в hist на 1”.

Фактически, это в точности то, что делает класс collections.Counter из стандартной библиотеки Python, который является подклассом словаря Python и переопределяет его метод .update():

from collections import Counter
recounted = Counter(a)
recounted

Вы можете убедиться, что ваша собственноручная функция делает то же самое, что и collections.Counter.