matplotlib.axes.Axes.hexbin
- Axes.hexbin(x, y, C=None, gridsize=100, bins=None, xscale='linear', yscale='linear', extent=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, edgecolors='face', reduce_C_function=<function mean>, mincnt=None, marginals=False, *, data=None, **kwargs)[source]
-
Создайте 2D-диаграмму гексагонального бинирования точек x, y.
Если C равно None, значение гексагона определяется количеством точек в гексагоне. В противном случае, C задаёт значения в координатах (x[i], y[i]). Для каждого гексагона эти значения уменьшаются с помощью функции reduce_C_function.
- Параметры:
-
- x, yarray-like
-
Позиции данных. x и y должны иметь одинаковую длину.
- Carray-like, необязательно
-
Если задано, эти значения накапливаются в бинах. В противном случае каждая точка имеет значение 1. Должно иметь одинаковую длину с x и y.
- gridsizeint или (int, int), по умолчанию: 100
-
Если целое число, количество гексагонов в направлении x. Количество гексагонов в направлении y выбирается таким образом, чтобы гексагоны были примерно правильными.
В качестве альтернативы, если кортеж (nx, ny), количество гексагонов в направлениях x и y. В направлении y счёт ведётся по вертикально выровненным гексагонам, а не по зигзагообразным цепочкам гексагонов; см. иллюстрацию ниже.
(
Source code,2x.png,png)Чтобы получить примерно правильные гексагоны, выберите \(n_x = \sqrt{3}\,n_y\).
- bins'log' или int или последовательность, по умолчанию: None
-
Дискретизация значений гексагонов.
- Если None, бинирование не применяется; цвет каждого гексагона непосредственно соответствует его значению счётчика.
- Если 'log', используйте логарифмическую шкалу для цветовой карты. Внутренне, \(log_{10}(i+1)\) используется для определения цвета гексагона. Это эквивалентно
norm=LogNorm(). - Если целое число, разделите счётчики на указанное количество бинов и окрасьте гексагоны соответствующим образом.
- Если последовательность значений, значения нижней границы бинов для использования.
- xscale{'linear', 'log'}, по умолчанию: 'linear'
-
Использовать линейную или логарифмическую (по основанию 10) шкалу на горизонтальной оси.
- yscale{'linear', 'log'}, по умолчанию: 'linear'
-
Использовать линейную или логарифмическую (по основанию 10) шкалу на вертикальной оси.
- mincntint >= 0, по умолчанию: None
-
Если не None, отображаются только ячейки с как минимум mincnt точками в ячейке.
- marginalsbool, по умолчанию: False
-
Если marginals равно True, строятся предельная плотность как цветные прямоугольники вдоль нижней части оси x и слева от оси y.
- extentкортеж из 4 чисел с плавающей точкой, по умолчанию: None
-
Пределы бинов (xmin, xmax, ymin, ymax). По умолчанию пределы назначаются на основе gridsize, x, y, xscale и yscale.
Если xscale или yscale установлено в 'log', пределы ожидаются как экспоненты для степени 10. Например, для пределов x от 1 до 50 в 'linear' шкале и пределов y от 10 до 1000 в 'log' шкале, введите (1, 50, 1, 3).
- Возвращаемые значения:
-
PolyCollection-
A
PolyCollectionопределяющий гексагональные бины.-
PolyCollection.get_offsetsсодержит массив Mx2, содержащий координаты x, y центров M гексагонов. -
PolyCollection.get_arrayсодержит значения M гексагонов.
Если marginals равно True, горизонтальная и вертикальная полосы (оба PolyCollections) будут прикреплены к возвращаемой коллекции как атрибуты hbar и vbar.
-
- Другие параметры:
-
-
cmapстрока или
Colormap, по умолчанию:rcParams["image.cmap"](по умолчанию:'viridis') -
Объект Colormap или зарегистрированное имя цветовой карты, используемое для сопоставления скалярных данных с цветами.
-
normстрока или
Normalize, необязательно -
Метод нормализации, используемый для масштабирования скалярных данных до диапазона [0, 1] перед сопоставлением с цветами с использованием cmap. По умолчанию используется линейное масштабирование, отображающее наименьшее значение в 0, а наибольшее в 1.
Если задано, это может быть одно из следующих:
- Экземпляр
Normalizeили один из его подклассов (см. Нормализация цветовых карт). - Имя шкалы, например, "linear", "log", "symlog", "logit" и т.д. Для получения списка доступных шкал вызовите
matplotlib.scale.get_scale_names(). В этом случае подходящий подклассNormalizeгенерируется и создаётся динамически.
- Экземпляр
- vmin, vmaxчисло с плавающей точкой, необязательно
-
При использовании скалярных данных и отсутствии явного norm, vmin и vmax определяют диапазон данных, который охватывает цветовая карта. По умолчанию цветовая карта охватывает весь диапазон значений предоставленных данных. Использование vmin/vmax при заданном объекте norm является ошибкой (но использование имени norm в виде строки вместе с vmin/vmax допустимо).
- alphaчисло с плавающей точкой от 0 до 1, необязательно
-
Значение смешивания альфы, от 0 (прозрачный) до 1 (непрозрачный).
- linewidthsчисло с плавающей точкой, по умолчанию: None
-
Если None, по умолчанию
rcParams["patch.linewidth"](по умолчанию:1.0). - edgecolors{'face', 'none', None} или цвет, по умолчанию: 'face'
-
Цвет границ гексагона. Возможные значения:
- 'face': Рисует границы тем же цветом, что и цвет заливки.
- 'none': Границы не рисуются. Это иногда может привести к некрасивым непрокрашенным пикселям между гексагонами.
- None: Рисует контуры в стандартном цвете.
- Явный цвет.
-
reduce_C_functionвызываемая функция, по умолчанию:
numpy.mean -
Функция для агрегирования C в пределах бинов. Она игнорируется, если C не задано. Она должна иметь сигнатуру:
def reduce_C_function(C: array) -> float
Обычно используемые функции:
-
numpy.mean: среднее арифметическое точек -
numpy.sum: интеграл значений точек -
numpy.amax: значение, взятое от самой большой точки
По умолчанию будут уменьшены только ячейки с не менее чем 1 точкой, так как некоторые функции сокращения (такие как
numpy.amax) будут выдавать ошибки/предупреждения при пустом вводе. Изменение mincnt изменит пороговое значение, а при установке в 0 передаст пустой ввод функции сокращения. -
- dataиндексируемый объект, необязательно
-
Если задано, следующие параметры также принимают строку
s, которая интерпретируется какdata[s](если это не вызывает исключение):x, y, C
-
**kwargs
PolyCollectionсвойства -
Все остальные ключевые аргументы передаются в
PolyCollection:
-
cmapстрока или
Свойство
Описание
функция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi, и возвращает массив чисел с плавающей точкой (m, n, 3) и два смещения от нижнего левого угла изображения
массив-подобный объект или скаляр или None
bool
antialiasedили aa или antialiasedsbool или список bool
массив-подобный объект или None
CapStyleили {'butt', 'projecting', 'round'}(vmin: float, vmax: float)
BboxBaseили Nonebool
Объект Patch или (Path, Transform) или None
Colormapили строка или Noneцвет или список кортежей RGBA
edgecolorили ec или edgecolorsfacecolorили facecolors или fcстрока
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
bool
JoinStyleили {'miter', 'round', 'bevel'}объект
linestyleили штрихи или linestyles или lsстрока или кортеж или список из них
linewidthили linewidths или lwчисло с плавающей точкой или список чисел с плавающей точкой
bool
Normalizeили строка или Noneoffset_transformили transOffset(N, 2) или (2,) массив-подобный объект
список
AbstractPathEffectсписок массивов-подобных объектов
None или bool или число с плавающей точкой или вызываемая функция
число с плавающей точкой
bool
sizesnumpy.ndarrayили None(scale: float, length: float, randomness: float)
bool или None
строка
список строк или None
список массивоподобных объектов
неизвестно
bool
float
См. также
hist2d-
прямоугольные бины 2D гистограммы
Примеры использования matplotlib.axes.Axes.hexbin
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.hexbin.html