Как связать цвет с каждым кластером точек? - PullRequest
1 голос
/ 21 марта 2012

Мне даны некоторые points и некоторые centroids, представляющие центры некоторых скоплений точек.Меня просят определить, к какому кластеру относится каждая точка, а затем построить ее (используя scatter3), и каждый кластер точек должен быть окрашен по-разному.

Как создать исходную матрицу размера cluster_colorsCx3, где C - количество скоплений / центроидов?Неважно, какие цвета, но они должны быть легко различимы.Кроме того, я не знаю количество кластеров заранее.

1 Ответ

2 голосов
/ 21 марта 2012

Чтобы закрасить точки с помощью SCATTER3 , вам действительно нужна матрица Nx1 (CLR в приведенном ниже примере), там N - количество точек. Эта матрица может содержать номер кластера, например.

scatter3(X,Y,Z,[],CLR)

Цвета будут использоваться из текущей карты цветов. Чтобы установить цветовую карту вам нужна матрица Cx3. Вы можете получить его из любой существующей карты цветов. Подробнее см. COLORMAP .

Например,

colormap(jet(C))

На самом деле количество цветов в цветовой карте не обязательно должно быть равно количеству кластеров.

Вы также можете создать свою собственную карту цветов с помощью Редактор карт цветов MATLAB . Или найдите много хороших цветовых карт на FileExchange, например этот .

...