binScatterPlot

График поля точек интервалов для длинных массивов

Синтаксис

binScatterPlot(X,Y)
binScatterPlot(X,Y,nbins)
binScatterPlot(X,Y,Xedges,Yedges)
binScatterPlot(X,Y,Name,Value)
h = binScatterPlot(___)

Описание

пример

binScatterPlot(X,Y) создает сгруппированный график рассеивания данных в X и Y. Функция binScatterPlot использует автоматический алгоритм раскладывания, который возвращает интервалы с универсальной областью, выбранной, чтобы покрыть область значений элементов в X и Y и показать базовую форму распределения.

пример

binScatterPlot(X,Y,nbins) задает количество интервалов, чтобы использовать в каждой размерности.

пример

binScatterPlot(X,Y,Xedges,Yedges) задает ребра интервалов в каждой размерности с помощью векторов Xedges и Yedges.

пример

binScatterPlot(X,Y,Name,Value) задает дополнительные опции с одним или несколькими аргументами пары "имя-значение" с помощью любого из предыдущих синтаксисов. Например, можно задать 'Color' и допустимый параметр цвета, чтобы изменить цветную тему графика или 'Gamma' с положительной скалярной величиной, чтобы настроить уровень детализации.

h = binScatterPlot(___) возвращает объект Histogram2. Используйте этот объект осмотреть свойства графика.

Примеры

свернуть все

Создайте два высоких вектора случайных данных. Создайте сгруппированный график рассеивания для данных.

X = tall(randn(1e5,1));
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 12).
Y = tall(randn(1e5,1));
binScatterPlot(X,Y)

Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 1 sec
Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0.19 sec

Получившаяся фигура содержит ползунок, чтобы настроить уровень детализации в изображении.

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

Постройте сгруппированный график рассеивания случайных данных, отсортированных в 100 интервалов в каждой размерности.

X = tall(randn(1e5,1));
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 12).
Y = tall(randn(1e5,1));
binScatterPlot(X,Y,100)

Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0.8 sec
Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0.2 sec

Используйте 20 интервалов в x-размерности и продолжите использовать 100 интервалов в y-размерности.

binScatterPlot(X,Y,[20 100])

Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0.21 sec
Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0.093 sec

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

Создайте сгруппированный график рассеивания с 100 ребрами интервала между [-2 2] в каждой размерности. Данные вне заданных ребер интервала не включены в график.

X = tall(randn(1e5,1));
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 12).
Y = tall(randn(1e5,1));
Xedges = linspace(-2,2);
Yedges = linspace(-2,2);
binScatterPlot(X,Y,Xedges,Yedges)

Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 1.1 sec

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

Xedges = [-Inf linspace(-2,2) Inf];
Yedges = [-Inf linspace(-2,2) Inf];
binScatterPlot(X,Y,Xedges,Yedges)

Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0.23 sec

Постройте сгруппированный график рассеивания случайных данных, задав 'Color' как 'c'.

X = tall(randn(1e5,1));
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 12).
Y = tall(randn(1e5,1));
binScatterPlot(X,Y,'Color','c')

Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 1 sec
Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0.21 sec

Входные параметры

свернуть все

Данные, чтобы распределить среди интервалов, заданных в качестве отдельных аргументов высоких векторов, матриц или многомерных массивов. X и Y должны быть одного размера. Если X и Y не являются векторами, то binScatterPlot обрабатывает их как векторы отдельного столбца, X(:) и Y(:).

Соответствующие элементы в X и Y задают x и координаты y точек 2D данных, [X(k),Y(k)]. Базовые типы данных X и Y могут отличаться, но binScatterPlot конкатенирует эти входные параметры в один N-by-2 высокая матрица доминирующего базового типа данных.

binScatterPlot игнорирует все значения NaN. Точно так же binScatterPlot игнорирует Inf и значения -Inf, если ребра интервала явным образом не задают Inf или -Inf как ребро интервала.

Примечание

Если X или Y содержат целые числа типа int64 или uint64, которые больше, чем flintmax, то рекомендуется, чтобы вы явным образом задали ребра интервала. binScatterPlot автоматически интервалы входные данные с помощью двойной точности, которая испытывает недостаток в целочисленной точности чисел, больше, чем flintmax.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический

Количество интервалов в каждой размерности, заданной как положительное скалярное целое число или двухэлементный вектор положительных целых чисел. Если вы не задаете nbins, то binScatterPlot автоматически вычисляет сколько интервалов, чтобы использовать на основе значений в X и Y.

  • Если nbins является скаляром, то использование binScatterPlot что много интервалов в каждой размерности.

  • Если nbins является вектором, то nbins(1) задает количество интервалов в x - размерность и nbins(2) задают количество интервалов в y - размерность.

Пример: binScatterPlot(X,Y,20) использует 20 интервалов в каждой размерности.

Пример: binScatterPlot(X,Y,[10 20]) использует 10 интервалов в x - размерность и 20 интервалов в y - размерность.

Ребра интервала в x - размерность, заданная как вектор. Xedges(1) является первым ребром первого интервала в x - размерность, и Xedges(end) является внешним краем последнего интервала.

Значение [X(k),Y(k)] находится в (i,j) th интервал если Xedges(i)X(k) <Xedges(i+1) и Yedges(j)Y(k) <Yedges(j+1). Последние интервалы в каждой размерности также включают последнее (внешнее) ребро. Например, [X(k),Y(k)] попадает в i th интервал в последней строке если Xedges(end-1)X(k)Xedges(end) и Yedges(i)Y(k) <Yedges(i+1).

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический

Ребра интервала в y - размерность, заданная как вектор. Yedges(1) является первым ребром первого интервала в y - размерность, и Yedges(end) является внешним краем последнего интервала.

Значение [X(k),Y(k)] находится в (i,j) th интервал если Xedges(i)X(k) <Xedges(i+1) и Yedges(j)Y(k) <Yedges(j+1). Последние интервалы в каждой размерности также включают последнее (внешнее) ребро. Например, [X(k),Y(k)] попадает в i th интервал в последней строке если Xedges(end-1)X(k)Xedges(end) и Yedges(i)Y(k) <Yedges(i+1).

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: binScatterPlot(X,Y,'BinWidth',[5 10])

Алгоритм раскладывания, заданный как пара, разделенная запятой, состоящая из 'BinMethod' и одно из этих значений.

ЗначениеОписание
'auto'Алгоритм 'auto' по умолчанию использует максимум 100 интервалов и выбирает, ширина интервала, чтобы покрыть данные располагаются и показывают форму базового распределения.
'scott'Правило Скотта оптимально, если данные близко к тому, чтобы быть совместно нормально распределенным. Это правило подходит для большинства других дистрибутивов, также. Это использует размер интервала [3.5*std(X)*numel(X)^(-1/4), 3.5*std(Y)*numel(Y)^(-1/4)].
'integers'Целочисленное правило полезно с целочисленными данными, когда это создает интервал для каждого целого числа. Это использует ширину интервала 1 и помещает ребра интервала на полпути между целыми числами. Чтобы постараться не случайно создавать слишком много интервалов, можно использовать это правило, чтобы создать предел 65 536 интервалов (216). Если область значений данных больше, чем 65 536, то целочисленное правило использует более широкие интервалы вместо этого.

Примечание

Свойство BinMethod получившегося объекта Histogram2 всегда имеет значение 'manual'.

Ширина интервалов в каждой размерности, заданной как пара, разделенная запятой, состоящая из 'BinWidth' и скалярный или двухэлементный вектор положительных целых чисел, [xWidth yWidth]. Скалярное значение указывает на ту же ширину интервала для каждой размерности.

Если вы задаете BinWidth, то binScatterPlot может использовать максимум 1 024 интервалов (210) по каждому измерению. Если вместо этого заданная ширина интервала требует большего количества интервалов, то binScatterPlot использует большую ширину интервала, соответствующую максимальному количеству интервалов.

Пример: binScatterPlot(X,Y,'BinWidth',[5 10]) использует интервалы с размером 5 в x - размерность и размер 10 в y - размерность.

Постройте цветную тему, заданную как пара, разделенная запятой, состоящая из 'Color' и одна из этих опций.

ОпцияОписание
'b'

Синий

'm'

Пурпурный

'c'

Голубой

'r'

Красный

'g'

Зеленый

'y'

Желтый

'k'

Черный

Гамма-коррекция, заданная как пара, разделенная запятой, состоящая из 'Gamma' и положительной скалярной величины. Используйте эту опцию, чтобы настроить яркость и интенсивность цвета, чтобы влиять на сумму детали в изображении.

  • gamma < 1 — Когда гамма уменьшается, штриховка интервалов с меньшими количествами интервала прогрессивно становится более темной, включая большее количество детали в изображении.

  • gamma > 1 — Когда гамма увеличивается, штриховка интервалов с меньшими количествами интервала прогрессивно становится легче, удаляя деталь из изображения.

  • Значение по умолчанию 1 не применяет исправления к отображению.

Интервал ограничивает в x - размерность, заданная как пара, разделенная запятой, состоящая из 'XBinLimits' и двухэлементного вектора, [xbmin,xbmax]. Вектор указывает на первые и последние ребра интервала в x - размерность.

binScatterPlot только отображает на графике данные, которые находятся в пределах пределов интервала включительно, Data(Data(:,1)>=xbmin & Data(:,1)<=xbmax).

Интервал ограничивает в y - размерность, заданная как пара, разделенная запятой, состоящая из 'YBinLimits' и двухэлементного вектора, [ybmin,ybmax]. Вектор указывает на первые и последние ребра интервала в y - размерность.

binScatterPlot только отображает на графике данные, которые находятся в пределах пределов интервала включительно, Data(Data(:,2)>=ybmin & Data(:,2)<=ybmax).

Выходные аргументы

свернуть все

Сгруппированный график рассеивания, возвращенный как объект Histogram2. Для получения дополнительной информации смотрите Histogram2 Properties.

Расширенные возможности

Введенный в R2017b