A football addiction confession and English club fan catchments


Thursday 13th June

Update 14:46: Attempted a fix for Google Chrome browser but it does not display properly in Kyso. Open in Firefox or Safari to view map.

A football addiction confession


Not even two weeks since the Champions League final, today's release of the Premier League 2019/20 fixtures marks the countdown to the new English domestic football season. For fans of newly promoted clubs it's a particularly exciting day, and the more studious will begin to chart potential pathways to league survival. All fans will eagerly look out for their team's opening day, Boxing Day and final day fixtures, as well as those against rivals.

I can remember in years gone by it being my small dose of the potent drug of club football, which, in Europe at least, is otherwise unavailable at this time of year. Lower strength substitutes such as tennis, cricket, the Olympics and even international football are available, but none of these can compete with club football.

Having been brought up in the rural Wiltshire football wilderness, and with a father who did not count the beautiful game among his interests, I ended up devoting my loyalty as a kid to Manchester United - the most successful club at that time. And it would no exaggeration to say I got myself addicted to football. In what were sometimes difficult teen years, following club football provided a hobby and escape for me. I would love to have been good at playing it too, but my slightly poor co-ordination, self consciousness and lack of self confidence got in the way.

This addiction manifested itself in many different ways. Some examples include a few trips to Old Trafford (I even caught this quite remarkable Rooney goal), obsessively checking the BBC Sport transfer gossip column, regularly watching Sky Sports News for hours on end (when it was on Freeview) and a successful lobbying effort to get our house subscribed to Sky Sports.

The definition of a "true fan" is probably someone whose emotions on match days are strongly correlated with their team's showing on the pitch; they feel intensely the joy of the highs and the pain of the lows. As United's domestic and European success between 2006 and 2009 came to an end when I was about 16, it got to a point when I realised I would be happier if I took the conscious decision to "mentally detach" myself from supporting them. Although that may sound like a joke, I'm actually being dead serious!

I didn't abandon football entirely - far from it. Football has been a continued interest of mine and a fruitful source of conversation, particularly as I wouldn't count myself a big film or TV buff. And as I have moved around since school, it has been fun to watch my local teams: York City, West Ham United, Curicó Unido (in Chile), Bristol City and, most recently, Tottenham Hotspur.

I might not be a "fan", but I do feel some degree of belonging and affinity towards all of these clubs. And having worked as a steward at Tottenham since their return to N17 and told my colleagues I'm a Spurs supporter, maybe it is now appropriate to use the "f word" once more. I do appreciate most people will be reading all of this in horror!

Football club fan catchments


As some light relief from working on my MSc thesis, I have applied my newly developed Python programming skills to the topic of football club fan catchments: the result is a map that shows the geographic catchment of almost every team in the Premier League and EFL(1).

I created a Voronoi diagram dividing England up in to 89 thiessen polygons, where every possible point inside a given polygon is closest to a certain English Football League club stadium(2). I must acknowledge I used a spreadsheet of stadiums from a blog post written by someone who undertook the same exercise a year ago, but I still claim some novelness to my version by virtue of the fact it is interactive(3)!

I then went a step further by using Census Output Area data to estimate the populations in each of these polygons. I have also calculated the average age of each catchment and YouGov "fame ranking" of those for which it was available(4).

The interactive map shows a thiessen polygon for each club. The colours correspond by default to the population size of the catchment; the intervals for each colour can be seen in the legend. You can click the layer icon on the right-hand side to toggle to an average aged based choropleth map (note you must also deselect population). Additional information is also displayed in the tooltip - this can brought up by clicking on the desired club's map marker.

I hope you find it interesting and would welcome any feedback in the comments section.

(1) The Welsh clubs Swansea City, Cardiff City and Newport (who still play in the English system) are excluded, leaving 89 clubs in total.

(2) Based on the teams due to participate in the EFL/EPL the 2019/20 season. Coventry City catchment calculated using coordinates of the Ricoh Arena (their former Stadium). Otherwise they would have an identical catchment due to Birmingham City thanks to their current groundshare arrangement.

(3) I also could not get the co-ordinates in his data to work so I re-extracted these using the Wikipedia API

(4) There are no good statistics on actual fan base sizes other than for the top clubs. Although I think the survey is of UK residents, these YouGov rankings actually contains some European teams that I have stripped out. I could also have scraped the number of Twitter followers for each club but decided life was too short!

Loading output library...



Import packages & configuration


Main club & stadium data


Get stadium coordinates


YouGov fame data


Wikipedia capacity data


Make polygons


Voronoi function taken from https://gist.github.com/pv/8036995

Population attributes


Build map

Loading output library...