iter 0
Cluster spheres (color = assignment) Bar height = |silhouette|, green = good fit Red bar = negative silhouette (misfit)
⚠ Couldn't load the 3D engineThree.js failed to load from the CDN. Check your connection and reload.

Silhouette Score: Finding the Right Number of Clusters

K-means will happily split your data into any K you ask for — this simulator shows why picking that K is a real question with a real answer. It draws a hidden mixture of Gaussian blobs, runs Lloyd's algorithm live in 3D, and raises a colored bar over every point whose height and color encode its silhouette coefficient: how much closer it sits to its own cluster than to its nearest rival. Sweep K from 2 to 8 and the panel plots the average silhouette for each value, exposing the peak that marks the number of clusters the data actually supports — the same diagnostic scikit-learn's silhouette_score is built on, and a sharper tool than watching inertia fall on an elbow plot.