ARAM Analytics
A three part project: retrieve League of Legends match data from Riot's API by writing a Python program, analyze the data using Pandas, then turn the data into designs inspired by Spotify Wrapped.

February 2024

Table of Contents


I quit League of Legends—a popular multiplayer game—in 2022, and I wanted to collect my ARAM match data before it is forever loss to the abyss. I also wanted to turn the data into fun designs inspired by "Spotify Wrapped" as a way to recap the many hours I spent gaming. This fun personal project brings my my computer science and design background together. 

Part 1: data collection

League of Legends match data can be accessed via Riot's API. They save detailed match results and statistics, so I wanted to see my performance through my last 750 ARAM games. I wrote a Python program that made requests to the API to get my match data, parse it, organize it into a DataFrame, and analyze the numbers.

The workflow is quite simple, but requires quite a bit of coding. Initially, I utilized the Summoner-V4 API to obtain my unique "puuid," which served as a key identifier for my League of Legend account. Subsequently, I employed the Match-V5 API to retrieve the IDs of my last 750 matches. With this information, I iteratively fetched JSON data for each match, enabling detailed analysis of game-specific statistics and outcomes.

I was able to leverage the power of Python libraries like Pandas to assist in data manipulation and organization. I stored the statistics and outcomes I was most interested in a DataFrame—each row representing a match.

Part 2: data analysis

With the organized data in a DataFrame, I leveraged the power of Pandas to assist me in the analysis. I analyzed win rate dynamics, champion mastery, teammate success, and individual performance metrics. I made some very interesting discoveries. Here were some of my favorites:

  1. I had 7 penta kills (a lot more than I remember)
  2. I played 244 hours, ouch.
  3. My performance on blue side was better than red side. The rumor that blue side is better may actually be true.
Analyzed results from extracted data from Riot's APII
Breakdown of my last 750 games
Part 3: design
GIF showcasing the 10 screens of designs inspired by Spotify wrapped.
Final product recapping my last 750 ARAM games (inspired by Spotify Wrapped)
Mock up of my design inspired by Spotify Wrapped. The screen showcases that I have more losses than wins
Sample screen: more losses than wins :(