Borrar filtros
Borrar filtros

Info

La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.

Looping/Conditional statements when I don't know the exact end point

1 visualización (últimos 30 días)
Pranav Thiagarajan
Pranav Thiagarajan el 18 de En. de 2017
Cerrada: MATLAB Answer Bot el 20 de Ag. de 2021
Hello,
I have an array that contains multiple points in 3D space. These points have been grouped into clusters based on their proximity to one another. The number of clusters aren't always constant. There could be multiple or no clusters in a set of data(i.e. clusters or just individual points). I need to plot these points on a 3D graph and assign colours based on the cluster(i.e. one specific coulr per cluster) and one cluster for lone points. The array works in the following way:
Columns 1,2,3 : X,Y,Z coordinates
Column 4: Cluster number that point has been assigned to (-1 for individual point and 1,2,3 etc. for that cluster, 0 does not exist)
Since I do not know how many clusters exist in the data set to begin with (I find it out later), how can I assign individual colors when I do not know how many I will need?
I have tried in the following way, but I think there has to be a better way to do this. My method visits each point multiple times based on how many clusters exist. Is there a better way that only visits each point once?
Thanks for any help.
Pranav
for i=-1:1:numofClusters
for j=1:rows
if targetinfo(j,4)==i
if i==-1
scatter3(targetinfo(j,1),targetinfo(j,2),targetinfo(j,3)...
,'k' ,'*') %noise
else
scatter3(targetinfo(j,1),targetinfo(j,2),targetinfo(j,3)...
,cm(i,:),'o') %point in cluster
end
end
end
end

Respuestas (0)

La pregunta está cerrada.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by