Spec-Zone.ru › NumPy 1.12

numpy.histogram2d

numpy.histogram2d(x, y, bins=10, range=None, normed=False, weights=None) [source]

Вычисление двумерной гистограммы двух выборок данных.

Параметры:

x : array_like, форма (N,)

Массив, содержащий координаты x точек, которые необходимо гистограммировать.

y : array_like, форма (N,)

Массив, содержащий координаты y точек, которые необходимо гистограммировать.

bins : int или array_like или [int, int] или [array, array], необязательно

Указание бинов:

  • Если int, то число бинов для двух измерений (nx=ny=bins).
  • Если array_like, то границы бинов для двух измерений (x_edges=y_edges=bins).
  • Если [int, int], то число бинов в каждом измерении (nx, ny = bins).
  • Если [array, array], то границы бинов в каждом измерении (x_edges, y_edges = bins).
  • Комбинация [int, array] или [array, int], где int — число бинов, а array — границы бинов.

range : array_like, форма (2,2), необязательно

Левая и правая границы бинов для каждого измерения (если не указано явно в параметрах): bins. Все значения вне этого диапазона будут считаться выбросами и не будут учтены в гистограмме.

normed : bool, необязательно

Если False, возвращает количество выборок в каждом бине. Если True, возвращает плотность бинов bin_count / sample_count / bin_area.

weights : array_like, форма (N,), необязательно

Массив значений w_i, взвешивающих каждую выборку (x_i, y_i). Веса нормализуются до 1, если normed равно True. Если normed равно False, значения возвращаемой гистограммы равны сумме весов, принадлежащих выборкам, попадающим в каждый бины.

Возвращаемые значения:

H : ndarray, форма (nx, ny)

Двумерная гистограмма выборок x и y. Значения в x гистограммируются по первому измерению, а значения в y — по второму измерению.

xedges : ndarray, форма (nx,)

Границы бинов по первому измерению.

yedges : ndarray, форма (ny,)

Границы бинов по второму измерению.

См. также

histogram
1D гистограмма
histogramdd
Многомерная гистограмма

Примечания

Когда normed равно True, возвращаемая гистограмма является плотностью выборки, определённой таким образом, что сумма по всем бинам произведения bin_value * bin_area равна 1.

Обратите внимание, что гистограмма не следует картезианской конвенции, где значения x находятся на абсциссе, а значения y на оси ординат. Вместо этого значения x гистограммируются по первому измерению массива (вертикаль), а значения y — по второму измерению массива (горизонталь). Это обеспечивает совместимость с histogramdd.

Примеры

>>> import matplotlib as mpl
>>> import matplotlib.pyplot as plt

Постройте 2-D гистограмму с переменной шириной бинов. Сначала определите границы бинов:

>>> xedges = [0, 1, 3, 5]
>>> yedges = [0, 2, 3, 4, 6]

Далее мы создаём гистограмму H со случайным содержимым бинов:

>>> x = np.random.normal(2, 1, 100)
>>> y = np.random.normal(1, 1, 100)
>>> H, xedges, yedges = np.histogram2d(x, y, bins=(xedges, yedges))
>>> H = H.T  # Let each row list bins with common y range.

imshow может отображать только квадратные бины:

>>> fig = plt.figure(figsize=(7, 3))
>>> ax = fig.add_subplot(131, title='imshow: square bins')
>>> plt.imshow(H, interpolation='nearest', origin='low',
...         extent=[xedges[0], xedges[-1], yedges[0], yedges[-1]])

pcolormesh может отображать фактические границы:

>>> ax = fig.add_subplot(132, title='pcolormesh: actual edges',
...         aspect='equal')
>>> X, Y = np.meshgrid(xedges, yedges)
>>> ax.pcolormesh(X, Y, H)

NonUniformImage может использоваться для отображения фактических границ бинов с интерполяцией:

>>> ax = fig.add_subplot(133, title='NonUniformImage: interpolated',
...         aspect='equal', xlim=xedges[[0, -1]], ylim=yedges[[0, -1]])
>>> im = mpl.image.NonUniformImage(ax, interpolation='bilinear')
>>> xcenters = (xedges[:-1] + xedges[1:]) / 2
>>> ycenters = (yedges[:-1] + yedges[1:]) / 2
>>> im.set_data(xcenters, ycenters, H)
>>> ax.images.append(im)
>>> plt.show()

(Исходный код, png, pdf)

../../_images/numpy-histogram2d-1.png

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.12.0/reference/generated/numpy.histogram2d.html

Spec-Zone.ru

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