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));

Когда вы выполняете вычисления на длинных массивах, MATLAB® использует любого параллельный пул (значение по умолчанию, если у вас есть Parallel Computing Toolbox™), или локальный сеанс работы с MATLAB. Если вы хотите запустить пример с помощью локального сеанса работы с MATLAB, когда у вас есть Parallel Computing Toolbox, можно изменить глобальную среду выполнения при помощи mapreducer функция.

binScatterPlot(X,Y)

Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 4.3 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 2.1 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));

Когда вы выполняете вычисления на длинных массивах, MATLAB® использует любого параллельный пул (значение по умолчанию, если у вас есть Parallel Computing Toolbox™), или локальный сеанс работы с MATLAB. Если вы хотите запустить пример с помощью локального сеанса работы с MATLAB, когда у вас есть Parallel Computing Toolbox, можно изменить глобальную среду выполнения при помощи mapreducer функция.

binScatterPlot(X,Y,100)

Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 4 sec
Evaluation completed in 5.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.1 sec
Evaluation completed in 2.1 sec

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

binScatterPlot(X,Y,[20 100])

Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.82 sec
Evaluation completed in 1.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.86 sec
Evaluation completed in 1.2 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));

Когда вы выполняете вычисления на длинных массивах, MATLAB® использует любого параллельный пул (значение по умолчанию, если у вас есть Parallel Computing Toolbox™), или локальный сеанс работы с MATLAB. Если вы хотите запустить пример с помощью локального сеанса работы с MATLAB, когда у вас есть Parallel Computing Toolbox, можно изменить глобальную среду выполнения при помощи mapreducer функция.

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

Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 3.4 sec
Evaluation completed in 5 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':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 1.8 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));

Когда вы выполняете вычисления на длинных массивах, MATLAB® использует любого параллельный пул (значение по умолчанию, если у вас есть Parallel Computing Toolbox™), или локальный сеанс работы с MATLAB. Если вы хотите запустить пример с помощью локального сеанса работы с MATLAB, когда у вас есть Parallel Computing Toolbox, можно изменить глобальную среду выполнения при помощи mapreducer функция.

binScatterPlot(X,Y,'Color','c')

Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 4.4 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 2.2 sec

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

свернуть все

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

Соответствующие элементы в X и Y задайте x и координаты y точек 2D данных, [X(k),Y(k)]. Базовые типы данных X и Y может отличаться, но binScatterPlot конкатенирует эти входные параметры в один N- 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 | logical

Количество интервалов в каждой размерности, заданной как положительное скалярное целое число или двухэлементный вектор положительных целых чисел. Если вы не задаете 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 | logical

Ребра интервала в 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 | logical

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

Задайте дополнительные разделенные запятой пары Name,Value аргументы. 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). Если область значений данных больше 65536, то целочисленное правило использует более широкие интервалы вместо этого.

Примечание

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