# automatic circles that enclose clusters of similar data something like lineCoeff = polyfit(x, y, n) (regression line)

12 views (last 30 days)
Neo on 9 Feb 2023
Commented: Neo on 14 Feb 2023
hello, I have generated a pca plot and there are obvious clusters of the data but to make it more evident I would like to draw centroids (or similar shape fitting the same purpose) around the similar data in the pca plot. Is there a way to do this in matlab? I did try John D'Errico's function: incircle(): but I don't think its quite what I am looking for. i kind of want regression centroids around the clusters of similar data.
Update: John says that won't work so to be more specific, I would like a regression line to go into 3D plot.
Thank you for your response. I have included an example of what i am looking for below.
##### 3 CommentsShow 1 older commentHide 1 older comment
Neo on 10 Feb 2023
That sounds like it would work!!! I do have a list of points belonging to each cluster. How would i search for the minimal circle including them? Do you have an example that i could learn from?
It would be placed into a "for loop" that says if this value matches then it will be placed here. From there the minimal circle including them will be generated. How would i do that?
Neo on 10 Feb 2023
@Jan I hope you do respond because even if its not the answer I would like to know how to do this!!

John D'Errico on 9 Feb 2023
incircle has nothing to do with your problem. Sorry.
You would first want to use some sort of clustering algorithm on your data. k-means is the go-to tool for that.
Once you have the data clustered into groups, I would then just use the centroids from k-means itself as the center of the circles.
Alternatively, you could use my circumcircles tool to compute the circles, but the k-means centroids seem to make sense.
Finally, once you decide on the center of the circles, the radii are easy to generate as the distance to the farthest point in that cluster.
Neo on 12 Feb 2023
Dr. D’ricco can you make a kmeans plot from this example code I have made? It isn’t homework I’m practicing my skills in Matlab
Neo on 14 Feb 2023
@John D'Errico I attempted kmeans and ask for your correction to make it working with min bound circle included for clusters if that makes sense thanks for your time or you can refer me to another working example I can learn from. Thanks @John D'Errico