The Spacing Connectome

Click anywhere on the court to set the location of an offensive player. See where the other four offensive players tend to be, and how that changes based on whether the player has the ball or not. Built from every usable half-court possession across 10 ACB 2025-26

What this is

This is a basketball version of an encoding model from brain imaging: instead of predicting brain activity from a stimulus, we predict where the other four players tend to be from a stimulus, that is, an exact court location, and whether the ball is there. Two separate predictions, WITH ball and WITHOUT ball.

Method: Kernel regression (Nadaraya-Watson). This a weighted average over every real nearby frame, where the neighborhood size (bandwidth) was chosen by cross-validation against held-out data.

We divide the halfcourt in a 10x10 grid, which gives a total of 100 bins. Each bin j is one location where the rest of the players density gets tracked. When you click on a location for the reference player (and the corresponding ball status), the predicted density at each bin j is a weighted average, over every real historical frame i that had a player near x, of that frame's own real density at bin j:

ŷj(x) = Σi Kh(x,xi)·yi,j  /  Σi Kh(x,xi)
Kh(x,xi) = exp( −|x−xi|2 / 2h2 )

h (≈0.75ft) is the bandwidth selected through cross-validation.

This only covers offense right now, and 10 games isn't enough data to say much with real confidence about any one team's tendencies. The team comparison here is a fun illustration more than a reliable signal to read too much into. With a full season or more per team/coach, the same method could genuinely distinguish real team-by-team spacing habits and the same approach could be extended to defense too (e.g., how does a "nail" help defender rearrange the rest of the defense when they step in to help on a drive?).