clusterDBSCAN.plot

График кластеров

Описание

пример

fh = plot(clusterer,X,idx) отображает график результатов кластеризации DBSCAN и возвращает указатель на рисунок, fh. Входами являются объект кластера, clusterer, матрица входных данных, X, и индексы кластеров, idx.

fh = plot(___,'Parent',ax) также задает оси, ax, графика результатов кластера.

fh = plot(___,'Title',titlestr) также задает заголовок, titlestr, графика результатов кластера.

Примеры

свернуть все

Создайте обнаружения расширенных объектов с измерениями в области значений и Доплер. Предположим, что максимальная однозначная область значений составляет 20 м, а однозначный допплеровский диапазон простирается от -30 Гц к 30 Гц. Данные для этого примера содержатся в dataClusterDBSCAN.mat файл. Первый столбец матрицы данных представляет область значений, а второй - Doppler.

Входные данные содержат следующие расширенные цели и ложные предупреждения:

  • однозначная цель, расположенная на (10,15)

  • неоднозначная цель в Доплере, расположенная в(10,-30)

  • неоднозначная цель в области значений, расположенном в (20,15)

  • неоднозначная цель в области значений и Доплер, расположенный в (20,30)

  • 5 ложных предупреждений

Создайте clusterDBSCAN объект и укажите, что значения не выполняются путем установки EnableDisambiguation на false. Решите для индексов кластера.

load('dataClusterDBSCAN.mat');
cluster1 = clusterDBSCAN('MinNumPoints',3,'Epsilon',2, ...
    'EnableDisambiguation',false);
idx = cluster1(x);

Используйте clusterDBSCAN plot объект для отображения кластеров.

plot(cluster1,x,idx)

Figure Clusters contains an axes. The axes with title Clusters contains 10 objects of type line, scatter, text.

График указывает, что существует восемь явных кластеров и шесть шумовых точек. 'Dimension 1' метка соответствует области значений, и 'Dimension 2' метка соответствует Доплеру.

Далее создайте другую clusterDBSCAN объект и задать EnableDisambiguation на true чтобы указать, что кластеризация выполняется в диапазоне и контурах неоднозначности Доплера.

cluster2 = clusterDBSCAN('MinNumPoints',3,'Epsilon',2, ...
    'EnableDisambiguation',true,'AmbiguousDimension',[1 2]);

Выполните кластеризацию с использованием пределов неоднозначности, а затем постройте график результатов кластеризации. Результаты кластеризации DBSCAN правильно показывают четыре кластера и пять шумовых точек. Для примера точки на области значений, близкие к нулю, кластеризованы с точками около 20 м, потому что максимальная однозначная область значений составляет 20 м.

amblims = [0 maxRange; minDoppler maxDoppler];
idx = cluster2(x,amblims);
plot(cluster2,x,idx)

Figure Clusters contains an axes. The axes with title Clusters contains 6 objects of type line, scatter, text.

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

свернуть все

Объект кластера, заданный как clusterDBSCAN объект.

Входные данные, заданные как матрица N -by P. Строки N соответствуют точкам в P -мерном пространстве функций. Столбцы P содержат значения функций, над которыми происходит кластеризация. Для примера двухколоночный вход может содержать Декартовы координаты x и y, или диапазон и Доплер.

Типы данных: double

Индексы кластера, заданные как N-на-1 целочисленный вектор-столбец. Индексы кластера представляют результаты кластеризации алгоритма DBSCAN, содержащегося в первом выходном аргументе clusterDBSCAN. idx значения начинаются с единицы и последовательно нумеруются. Функция графика объекта помечает каждый кластер индексом кластера. Значение -1 в idx указывает точку шума DBSCAN. Точки шума не маркируются.

Типы данных: double

Оси графика, заданные как Axes указатель на объект.

Типы данных: double

Заголовок графика, заданный как вектор символов или строка.

Пример: 'Range-Doppler Clusters'

Типы данных: char | string

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

свернуть все

Фигура указатель графика, возвращенный как положительная скалярная величина.

Введенный в R2021a