Each glowing sphere is one sample placed along the depth axis by its classifier score, colored by its true class when it's on the "unclassified" side of the plane. The translucent red decision plane marks the threshold: cross a point with it and the point recolors instantly to reflect its actual outcome — green if it is a true positive, red if a false positive, orange if a false negative, blue-gray if a true negative. A cluster of four bars behind the field is a literal 3D confusion matrix: bar height is the live count in that cell, recomputed every time the plane moves.
predicted positive ⇔ score ≥ t (in front of / at the plane)
TP = true + AND predicted + FP = true − AND predicted +
FN = true + AND predicted − TN = true − AND predicted −
- Drag the plane — click and drag it directly in the 3D scene (or use the slider); every point's color updates from a real per-sample classification check against the new threshold, not an animation.
- Matrix bars — the four bars (TP, FP, FN, TN, left to right) grow and shrink live; watch FP shrink and FN grow together as you push the plane toward high scores — the same trade the sidebar metrics report as numbers.
- Class separation / spread — separate the two clusters cleanly and there is a threshold where the FP and FN bars both nearly vanish; overlap them heavily and no single plane position empties both bars at once.
- Orbit freely — rotating the camera doesn't change any count; the plane's position along the score axis is the only thing the confusion matrix depends on.
Real-world relevance: seeing individual samples flip categories as the plane crosses them is the same event that happens, one row at a time, when a fraud system, a spam filter or a diagnostic test's threshold gets tuned in production.