matplotlib.axes.Axes.scatter
- Axes.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, *, edgecolors=None, plotnonfinite=False, data=None, **kwargs)[source]
-
Диаграмма рассеяния y по x с различным размером и/или цветом маркеров.
- Параметры:
-
- x, yfloat или array-like, форма (n, )
-
Позиции данных.
- sfloat или array-like, форма (n, ), необязательно
-
Размер маркера в точках**2 (типографические точки — 1/72 дюйма). По умолчанию
rcParams['lines.markersize'] ** 2.Ширина линии и цвет обводки могут визуально взаимодействовать с размером маркера и приводить к артефактам, если размер маркера меньше ширины линии.
Если ширина линии больше 0, а цвет обводки не 'none', то эффективный размер маркера увеличивается на половину ширины линии, так как штрих будет центрирован по краю фигуры.
Чтобы устранить обводку маркера, установите linewidth=0 или edgecolor='none'.
- carray-like или список цветов или цветов, необязательно
-
Цвета маркеров. Возможные значения:
- Скаляр или последовательность n чисел, которые будут сопоставлены с цветами с помощью cmap и norm.
- Двумерный массив, в котором строки — RGB или RGBA.
- Последовательность цветов длиной n.
- Строка формата одного цвета.
Обратите внимание, что c не должен быть одиночной числовой последовательностью RGB или RGBA, так как это неотличимо от массива значений для сопоставления с цветом. Если вы хотите указать одно и то же значение RGB или RGBA для всех точек, используйте двумерный массив с одной строкой. В противном случае сопоставление значений будет иметь приоритет в случае соответствия размера с x и y.
Если вы хотите указать один цвет для всех точек, используйте параметр color.
По умолчанию
None. В этом случае цвет маркера определяется значением color, facecolor или facecolors. В случае, если они не указаны илиNone, цвет маркера определяется следующим цветом из цикла цветовAxes«форма и заливка». Этот цикл по умолчаниюrcParams["axes.prop_cycle"](по умолчаниюcycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])). -
marker
MarkerStyle, по умолчаниюrcParams["scatter.marker"](по умолчанию'o') -
Стиль маркера. marker может быть экземпляром класса или текстовым сокращением для определенного маркера. Подробнее о стилях маркеров см. в
matplotlib.markers. -
cmapстрока или
Colormap, по умолчаниюrcParams["image.cmap"](по умолчанию'viridis') -
Экземпляр Colormap или зарегистрированное имя цветовой карты, используемое для сопоставления скалярных данных с цветами.
Этот параметр игнорируется, если c является RGB(A).
-
normстрока или
Normalize, необязательно -
Метод нормализации, используемый для масштабирования скалярных данных в диапазоне [0, 1] перед сопоставлением с цветами с помощью cmap. По умолчанию используется линейное масштабирование, сопоставляющее минимальное значение с 0, а максимальное — с 1.
Если задано, это может быть одно из следующих:
- Экземпляр
Normalizeили один из его подклассов (см. Нормализация цветовой карты). - Имя масштаба, например, "linear", "log", "symlog", "logit" и т.д. Список доступных масштабов можно получить, вызвав
matplotlib.scale.get_scale_names(). В этом случае генерируется и инициализируется соответствующий подклассNormalize.
Этот параметр игнорируется, если c является RGB(A).
- Экземпляр
- vmin, vmaxfloat, необязательно
-
При использовании скалярных данных и отсутствии явного norm, vmin и vmax определяют диапазон данных, который покрывает цветовая карта. По умолчанию цветовая карта охватывает весь диапазон значений предоставленных данных. Использование vmin/vmax при заданном экземпляре norm является ошибкой (но использование имени norm типа
strвместе с vmin/vmax допустимо).Этот параметр игнорируется, если c является RGB(A).
- alphafloat, по умолчанию: None
-
Значение смешивания альфа-канала, от 0 (прозрачный) до 1 (непрозрачный).
-
linewidthsfloat или array-like, по умолчанию
rcParams["lines.linewidth"](по умолчанию1.5) -
Ширина линии краев маркеров. Примечание: значение edgecolors по умолчанию равно 'face'. Возможно, вам захочется это изменить.
-
edgecolors{'face', 'none', None} или цвет или список цветов, по умолчанию
rcParams["scatter.edgecolors"](по умолчанию'face') -
Цвет обводки маркера. Возможные значения:
- 'face': Цвет обводки всегда будет таким же, как и цвет заливки.
- 'none': Граница фигуры не будет нарисована.
- Цвет или последовательность цветов.
Для маркеров без заливки edgecolors игнорируется. Вместо этого цвет определяется так же, как с 'face', т.е. из c, colors или facecolors.
- plotnonfinitebool, по умолчанию: False
-
Рисовать ли точки с нечисловыми значениями c (т.е.
inf,-infилиnan)? ЕслиTrue, точки рисуются цветом цветовой карты bad (см.Colormap.set_bad).
- Возвращает:
-
PathCollection
- Другие параметры:
-
- dataиндексируемый объект, необязательно
-
Если задано, следующие параметры также принимают строку
s, которая интерпретируется какdata[s](если это не вызывает исключения):x, y, s, linewidths, edgecolors, c, facecolor, facecolors, color
-
**kwargs
Collectionсвойства
См. также
plot-
Для построения диаграмм рассеяния, когда маркеры имеют одинаковый размер и цвет.
Примечания
- Функция
plotбудет быстрее для диаграмм рассеяния, где маркеры не меняются по размеру или цвету. - Любые или все x, y, s и c могут быть масками массивов, в этом случае все маски будут объединены, и будут нарисованы только не замаскированные точки.
- В основе scatter лежат 1D массивы; x, y, s и c могут быть входными N-D массивами, но внутри scatter они будут сглажены. Исключение — c, который будет сглажен только в случае соответствия его размера размеру x и y.
Примеры использования matplotlib.axes.Axes.scatter
Построение эллипса доверия двумерного набора данных
Диаграмма рассеяния с гистограммами (локализуемые оси)
Анимированная диаграмма рассеяния, сохранённая как GIF
Выбор индексов из коллекции с помощью полигонального селектора
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.scatter.html