soccer_ggplots
soccer_ggplots copied to clipboard
Soccer/football analytics blog posts & data viz from the World Cup, Premier League, Copa America, and beyond. Using ggplot2, ggsoccer, & more. (Est. June 2018) ****Please look at the README for best v...
Animate goals, Visualize stats, Video analyses, etc. from the World Cup, Premier League, Copa America, and beyond. (Using ggplot2, ggsoccer, and more)
Ryo Nakagawara | Twitter: @R_by_Ryo
NEW: J.League 2022 Mid-Season Review (June 15, 2022)
- J.League 2020 Season Review with R
- J.League 2021 Mid-Season Review
- J.League 2021 Season End Review
- J.League 2022 Mid-Season Review
Web-scrape Soccer Data Tutorial
Video Analyses
- Analyzing Trent Alexander-Arnold <> Andy Robertson cross-field passes: 1, 2, 3, 4
- FC Tokyo's 2nd goal vs. Shimizu S-Pulse (great example of a counterattack): 1, 2, 3, 4
- FC Tokyo vs. Kashima Antlers (Aug. 26, 2020): General match notes, Tactical breakdown of first conceded goal, Tactical breakdown of second conceded goal
- FC Tokyo vs. Nagoya Grampus (Aug. 15, 2020): General match notes
- FC Tokyo vs. Shonan Bellmare (Aug. 23, 2020): General match notes
- FC Tokyo vs. Gamba Osaka (Aug. 30, 2020): General match notes
Liverpool FC: xG Timelines, xG Shot Maps, & Match Notes/Thoughts
Shot Comparison Maps
Squad Age Profiles
- Request thread (Feb. 28, 2020): LFC, Juventus, Barcelona, Arsenal, BVB, & many more requested & done
- Code for grabbing the data from transfermarkt (see 'Intro to {polite} Web Scraping of Soccer Data with R!' blog post above for details)
Visualizing the Premier League (2019-2020)
- Visualizing the Premier League So Far, Part 1: Overview with xPts Tables and xG Plots
- Visualizing the Premier League So Far, Part 2: Stats from Open Play and Set Pieces
Visualizing Event-Level Data with R!
Lionel Messi / Barcelona (using StatsBomb data):
- Pass Partner Plots
- Much more coming soon!
Copa América 2019 blog post:
Asian Cup 2019 blog post:
World Cup blog posts:
- Part 1: Recreating the Goals of the World Cup!
- Part 2: Final Matchday Drama of the World Cup Group Stages!
- Part 3: Animating the Goals of the World Cup!
rmarkdown/scripts/gists
- Progressive Passers - Bundesliga: Gist
- World Cup Goal Plots (static):
World Cup/RMarkdown/worldcup_goal_plots.rmd
- Animated World Cup Goals: Most up-to-date is in the blog post
- Group Table Final Matchday:
World Cup/RMarkdown/group_table_final_matchday.rmd
- Animated Japan Uniforms:
World Cup/RMarkdown/historical_kits.rmd
- Liverpool FC Age-Utility Matrix: Gist
- Jürgen Klopp's Managerial History with Elo Ratings: Gist
- J.League: 各チームの平均推定市場価格 vs. 平均年齢: Gist
- Asian Cup Top Scorers: Gist
- Asian Cup Winners: Gist
- J.League 2018 得点貢献度: Gist
- Goal-Contribution Matrix (Premier League 2018-2019 Season): Gist
- Player-Minutes Gantt Chart (Liverpool FC: 2010-2011 comparing Roy Hodgson vs. Kenny Dalglish): Gist
Visualizing the World Cup with R [Tokyo.R Presentation (July 2018)]:
More Examples:
Goalkeeper Performance & Workload
![](https://i.imgur.com/RWpad0G.png)
Progressive Passers: Bundesliga (2019-2020)
![](https://i.imgur.com/21HNfhd.png)
xG Match Summary
Manchester City players dominate the ‘expected’ stats: np-xG per 90 & xA per 90 for the Premier League (2019-2020)
![](https://i.imgur.com/eaj8iGH.png)
Player-Minutes Gantt Chart (Liverpool FC: 2015-2016 Season comparing Brendan Rodgers vs. Jürgen Klopp)
![](https://i.imgur.com/aGsEj93.png)