xG Model
Let me be clear - this is a Form over Function operation. So I wanted the easiest xG model I could possibly get my hands on. And I remembered making one for an old experimental viz, so I just stole that one. What follows are notes about why the model looks as it does, to the best of my memory/recreation now, because I made it apparently in December 2024 and it is currently April 2025 and I left the sum total of half a comment about what I was doing entirely in section headers.
The Approach
I knew I wanted to make the viz in R, because that's how I tend to make all of my static data visualizations.
I've heard from all sorts of places that the most important thing in xG by a good distance (like 70% a of it) is distance from the shot to the goal, and another good chunk (like 10% b of it) is the angle, and the rest of the variable are fighting for scraps of percentage points that matter when you aim for things like "performance differentation" and "accurate game prediction" and "rigor." I'm not aiming for any of that, so. Who needs more than two variables anyways.
For model, well, I've heard "xGBoost go brrrrrr" and I've never had
a great
any opportunity to try it.
And hey, that's pretty much a whole approach right there! Easy.
The Data
COMING AT SOME POINT PROBABLY