Spec-Zone.ru › Matplotlib

matplotlib.axes.Axes.hist

Axes.hist(x, bins=None, range=None, density=False, weights=None, cumulative=False, bottom=None, histtype='bar', align='mid', orientation='vertical', rwidth=None, log=False, color=None, label=None, stacked=False, *, data=None, **kwargs)[source]

Вычислите и постройте гистограмму.

Этот метод использует numpy.histogram для группирования данных в x и подсчёта количества значений в каждой группе, а затем рисует распределение в виде BarContainer или Polygon. Параметры bins, range, density и weights передаются в numpy.histogram.

Если данные уже сгруппированы и подсчитаны, используйте bar или stairs для построения распределения:

counts, bins = np.histogram(x)
plt.stairs(counts, bins)

В качестве альтернативы постройте предварительно вычисленные группы и подсчёты с помощью hist(), рассматривая каждую группу как одну точку с весом, равным её количеству:

plt.hist(bins[:-1], bins, weights=counts)

Входные данные x могут быть одномерным массивом, списком наборов данных потенциально различной длины ([x0, x1, ...]) или двумерным массивом NumPy, в котором каждый столбец представляет собой набор данных. Обратите внимание, что представление в виде массива NumPy транспонируется относительно представления в виде списка. Если входные данные — массив, то возвращаемое значение — кортеж (n, bins, patches); если входные данные — последовательность массивов, то возвращаемое значение — кортеж ([n0, n1, ...], bins, [patches0, patches1, ...]).

Маскированные массивы не поддерживаются.

Параметры:
x(n,) массив или последовательность (n,) массивов

Входные значения, может быть как один массив, так и последовательность массивов, которые не обязательно должны иметь одинаковую длину.

binsцелое число, последовательность или строка, по умолчанию: rcParams["hist.bins"] (по умолчанию: 10)

Если bins — целое число, оно определяет количество равномерных интервалов в диапазоне.

Если bins — последовательность, она определяет границы интервалов, включая левую границу первого интервала и правую границу последнего интервала; в этом случае интервалы могут быть неравномерно распределены. Все интервалы, кроме последнего (правого), являются полуоткрытыми. Другими словами, если bins:

[1, 2, 3, 4]

то первый интервал — [1, 2) (включая 1, но не включая 2), а второй — [2, 3). Последний интервал, однако, [3, 4], который включает 4.

Если bins — строка, она представляет одну из стратегий разбиения, поддерживаемых numpy.histogram_bin_edges: 'auto', 'fd', 'doane', 'scott', 'stone', 'rice', 'sturges' или 'sqrt'.

rangeкортеж или None, по умолчанию: None

Диапазон значений интервалов. Значения вне диапазона игнорируются. Если не указан, range равен (x.min(), x.max()). Параметр range не имеет эффекта, если bins — последовательность.

Если bins — последовательность или задан range, автоматическое масштабирование основано на заданном диапазоне интервалов вместо диапазона значений x.

densitybool, по умолчанию: False

Если True, рисуется и возвращается плотность вероятности: каждый интервал будет отображать сырое количество в интервале, делённое на общее количество счётов и ширину интервала (density = counts / (sum(counts) * np.diff(bins))), так что площадь под гистограммой интегрируется до 1 (np.sum(density * np.diff(bins)) == 1).

Если также True задан, сумма гистограмм нормализуется до 1.

weights(n,) массив или None, по умолчанию: None

Массив весов, имеющий такую же форму, как x. Каждое значение в x вносит свой связанный вес в подсчёт интервалов (вместо 1). Если density True, веса нормализуются, так что интеграл плотности в диапазоне остаётся равным 1.

cumulativebool или -1, по умолчанию: False

Если True, то вычисляется гистограмма, где каждый интервал даёт количество в данном интервале плюс все интервалы для меньших значений. Последний интервал даёт общее количество точек данных.

Если также density True, гистограмма нормализуется так, что последний интервал равен 1.

Если cumulative — число меньше 0 (например, -1), направление накопления меняется. В этом случае, если density True, гистограмма нормализуется так, что первый интервал равен 1.

bottomмассив, скаляр или None, по умолчанию: None

Положение нижней части каждого интервала, т.е. интервалы строятся от bottom до bottom + hist(x, bins). Если скаляр, нижняя часть каждого интервала сдвигается на одинаковую величину. Если массив, каждый интервал смещается независимо, и длина bottom должна соответствовать числу интервалов. Если None, по умолчанию 0.

histtype{'bar', 'barstacked', 'step', 'stepfilled'}, по умолчанию: 'bar'

Тип гистограммы для построения.

  • 'bar' — традиционная гистограмма в виде столбцов. Если задано несколько данных, столбцы располагаются рядом друг с другом.
  • 'barstacked' — гистограмма в виде столбцов, где несколько данных накладываются друг на друга.
  • 'step' создаёт линию, которая по умолчанию не залита.
  • 'stepfilled' создаёт линию, которая по умолчанию залита.
align{'left', 'mid', 'right'}, по умолчанию: 'mid'

Горизонтальное выравнивание столбцов гистограммы.

  • 'left': столбцы центрированы по левым границам интервалов.
  • 'mid': столбцы центрированы между границами интервалов.
  • 'right': столбцы центрированы по правым границам интервалов.
orientation{'vertical', 'horizontal'}, по умолчанию: 'vertical'

Если 'horizontal', для гистограмм в виде столбцов будет использоваться barh, и параметр bottom будет представлять левые границы.

rwidthfloat или None, по умолчанию: None

Относительная ширина столбцов как доля ширины интервала. Если None, автоматически вычисляется ширина.

Игнорируется, если histtype равен 'step' или 'stepfilled'.

logbool, по умолчанию: False

Если True, ось гистограммы будет установлена в логарифмический масштаб.

colorцвет или список цветов или None, по умолчанию: None

Цвет или список цветов, по одному на набор данных. По умолчанию (None) используется стандартная последовательность цветов линий.

labelстрока или список строк, необязательно

Строка или последовательность строк для соответствия нескольким наборам данных. Гистограммы в виде столбцов дают несколько столбцов на набор данных, но метку получает только первый, так что legend будет работать как ожидается.

stackedbool, по умолчанию: False

Если True, несколько наборов данных накладываются друг на друга. Если False несколько наборов данных располагаются рядом, если histtype — 'bar', или друг над другом, если histtype — 'step'

Возвращаемое значение:
nмассив или список массивов

Значения интервалов гистограммы. См. density и weights для описания возможных семантик. Если вход x — массив, то это массив длиной nbins. Если вход — последовательность массивов [data1, data2, ...], то это список массивов со значениями гистограмм для каждого массива в том же порядке. Тип данных массива n (или его элементов массивов) всегда будет float, даже если не используются взвешивание или нормализация.

binsмассив

Границы интервалов. Длина nbins + 1 (nbins левых границ и правая граница последнего интервала). Всегда один массив, даже если передано несколько наборов данных.

patchesBarContainer или список Polygon или список таких объектов

Контейнер отдельных графических элементов, используемых для создания гистограммы, или список таких контейнеров, если передано несколько наборов данных.

Другие параметры:
dataиндексируемый объект, необязательно

Если задано, следующие параметры также принимают строку s, которая интерпретируется как data[s] (если это не вызывает исключение):

x, weights

**kwargs

Patch свойства

См. также

hist2d

2D гистограмма с прямоугольными ячейками

hexbin

2D гистограмма с шестиугольными ячейками

stairs

Построение предварительно вычисленных гистограмм

bar

Построение предварительно вычисленных гистограмм

Примечания

Для большого числа ячеек (>1000) построение можно значительно ускорить, используя stairs для построения предварительно вычисленной гистограммы (plt.stairs(*np.histogram(data))), или установив histtype в 'step' или 'stepfilled' вместо 'bar' или 'barstacked'.

Примеры использования matplotlib.axes.Axes.hist

Диаграмма рассеяния с гистограммами

Диаграмма рассеяния с гистограммами

Демонстрация осей

Демонстрация осей

Гистограммы

Гистограммы

Бигистограмма

Бигистограмма

Построение кумулятивных распределений

Построение кумулятивных распределений

Демонстрация различных настроек histtype функции histogram

Демонстрация различных настроек histtype функции histogram

Функция histogram (hist) с несколькими наборами данных

Функция histogram (hist) с несколькими наборами данных

Ячейки гистограммы, плотность и вес

Ячейки гистограммы, плотность и вес

Размещение текстовых блоков

Размещение текстовых блоков

Стиль Bayesian Methods for Hackers

Стиль Bayesian Methods for Hackers

Диаграмма рассеяния с гистограммами (Locatable Axes)

Диаграмма рассеяния с гистограммами (Locatable Axes)

Анимированная гистограмма

Анимированная гистограмма

Построение гистограмм с помощью прямоугольников и PolyCollections

Построение гистограмм с помощью прямоугольников и PolyCollections

Урок по объектам художника

Урок по объектам художника

hist(x)

hist(x)

Руководство по быстрому началу

Руководство по быстрому началу

Урок по путям

Урок по путям

Урок по преобразованиям

Урок по преобразованиям

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.hist.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API