The RIOT API challenge of April 2016 focuses on the use of champion mastery points.
Using those data, a map (or graph) of the champions is created as shown by the picture.
To simply visit the website look at the box below or the navigation bar
A more lengthy explanations of what you see and how it was made follows below.
For a given player, the mastery points of a champion represents her/his willingness and ability to play the champion. Thus we can consider the champion with the highest score the player's main, and the group of champions with high score the player's champion pool.
From the perspective of the players, some champions are more intuitive to play while others are more challenging. We expect that the champion pools of the players reflect those tendencies: those champions pools show which champions are similar from the point of view of the players.
Let's also remark that those champion mastery data are more reliable than sampling the champion pool from ranked games. Indeed it takes into account normal (not ranked) games and it attributes points based on the performance of the player rather than on quantity alone.
The Map is thus composed of nodes, one for each champion, and of edges or links between champions. Those links are weighted: the more two champions are in similar champion pools, the stronger is the link and the closer they are on the map.
The first step was to gather data. We sampled the champion mastery points of 13 000 players (and some) across the EUW, NA, BR and JP servers. For details on sampling process, please refer to the documentation on the associated github repository.
In order to consider the changes in the meta, or the evolution of a player, only champions played less than a month ago are kept. Furthermore, only the champions with the highest mastery points are taken into account. This is done to avoid forming strong links between less-played champions. Because of those filters, some champions may not appear, most likely those not favored by the current meta (April-May 2016).
Each champion is a node (represented by the champion picture in the map). For each player we calculate the strength of the links between every champions. We then aggregate those (we take the mean over all players for each link) to create the general map.
For greater clarity, let's consider a fictive player who mastered the following champions : Illaoi : 13000 Garen : 11000 Rek'Sai : 6300 Sona : 50 The mastery points clearly show that Sona is not part of this player's champion pool. She is thus not considered at all. In practice every champions with a level below 4 are not considered. Illaoi and Garen have both a large amount of mastery points and form the primary champions. Rek'Sai has less point but is still played by the player, she is thus part of the secondary champions.The following links are created : primary-primary : Illaoi - Garen, 11000/13000 primary-secondary : Illaoi - Rek'Sai, 6300/13000 primary-secondary : Garen - Rek'Sai, 6300/11000 No "secondary-secondary" links are created. The strength of the link is the mastery values of the "weaker" champion relative to the "stronger" champion.
We have thus built a graph of the champions where the strength of the links represent their closeness from a player point-of-view.
A short note to warn against drawing too many conclusions from the visual of the graph. The layout is automatically generated starting with random positions. Due to that, a same graph can lead to different layouts but still has the same intrasec properties.
For example, the isolation of the Olaf in the top left corner can mean that : maybe Olaf is rarely played (meta influence?), maybe he is a strong main with weak links (Olaf-mains only play Olaf), maybe it is an artifact of the layout.
Using the champion mastery data, the map presented here is built. Each node (image) is a champion and their relative closeness represents their similarity.
The closest neighbors to a given champion C are the champions most similar, from the players' point-of-view, to the champion C. In the "Closest Neighbors" section, we list the five closest neighbors for every champions in the graph.
Closest neighbors to a champion C, would be good recommendations to a player who has mastered champion C and who wishes to expand her/his champion pool.
Using the theory of graph and community, we can automatically find groups of champions that are closely associated. To view these groups, click this paragraph or follow the group link in the navigation bar.
Each group can again be analysed to extract sub-groups (if they exist). Those are presented in the same pages than the groups.
Bridges between groups are also considered and presented. A bridge is a strong link between two champions belonging to the two different groups.