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,png)Для получения приблизительно правильных гексагонов выберите \(n_x = \sqrt{3}\,n_y\).
- bins'log' или int или последовательность, по умолчанию: None
-
Дискретизация значений гексагонов.
- Если None, бинирование не применяется; цвет каждого гексагона напрямую соответствует его значению счётчика.
- Если 'log', использовать логарифмическую шкалу для цветовой карты. Внутренне, \(log_{10}(i+1)\) используется для определения цвета гексагона. Это эквивалентно
norm=LogNorm(). - Если целое число, разделить счётчики на указанное количество бинов и окрасить гексагоны соответственно.
- Если последовательность значений, значения нижней границы бинов, которые будут использоваться.
- xscale{'linear', 'log'}, по умолчанию: 'linear'
-
Использовать линейную или логарифмическую шкалу по оси абсцисс.
- yscale{'linear', 'log'}, по умолчанию: 'linear'
-
Использовать линейную или логарифмическую шкалу по оси ординат.
- mincntint > 0, по умолчанию: None
-
Если не None, отображать только ячейки с количеством точек, превышающим mincnt.
- marginalsbool, по умолчанию: False
-
Если marginals равно True, построить маргинальную плотность в виде окрашенных прямоугольников вдоль нижней части оси абсцисс и слева по оси ординат.
- 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-
А
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 типа
strвместе с vmin/vmax допустимо). - alphaчисло от 0 до 1, необязательно
-
Значение смешивания альфа-канала, между 0 (прозрачный) и 1 (непрозрачный).
- linewidthsчисло с плавающей точкой, по умолчанию: None
-
Если None, по умолчанию равно 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: значение из самой большой точки
-
- dataиндексируемый объект, необязательно
-
Если задано, следующие параметры также принимают строку
s, которая интерпретируется какdata[s](если это не вызывает исключения):x, y, C
-
**kwargs
PolyCollectionсвойства -
Все остальные ключевые аргументы передаются в
PolyCollection:
-
cmapстрока или
Свойство
Описание
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения
массивоподобный объект или скаляр или None
bool
antialiasedили aa или antialiasedsbool или список bool
массивоподобный объект или None
CapStyleили {'butt', 'projecting', 'round'}(vmin: float, vmax: float)
bool
Объект Patch или (Path, Transform) или None
Colormapили строка или Noneцвет или список кортежей RGBA
edgecolorили ec или edgecolorsцвет или список цветов или 'face'
facecolorили facecolors или fcцвет или список цветов
строка
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
bool
JoinStyleили {'miter', 'round', 'bevel'}объект
linestyleили dashes или linestyles или lsстрока или кортеж или список из них
linewidthили linewidths или lwчисло с плавающей точкой или список чисел с плавающей точкой
bool
Normalizeили строка или Noneoffset_transformили transOffsetнеизвестно
(N, 2) или (2,) массивоподобный объект
список массивоподобных объектов
None или bool или число с плавающей точкой или вызываемая функция
неизвестно
bool
sizesnumpy.ndarrayили None(scale: float, length: float, randomness: float)
bool или None
строка
список строк или None
список массивоподобных объектов
неизвестно
bool
число с плавающей точкой
См. также
hist2d-
Прямоугольные бины 2D гистограммы
Примеры использования matplotlib.axes.Axes.hexbin
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/_as_gen/matplotlib.axes.Axes.hexbin.html