Super Mario, Tetris, Zelda oder Pokémon – fast jedem sind diese Klassiker unter den Videospielen ein Begriff. Längst sind Videospiele kein Nischenprodukt für eine Nischenzielgruppe mehr, sondern ein boomendes Geschäft mit gewaltigen Umsatz- und Verkaufszahlen – auch in Deutschland. Dies beweist beispielsweise die aktuell stattfindende Videospiel-Messe „Gamescom“, die vor wenigen Tagen von Bundeskanzlerin Angela Merkel in Köln eröffnet wurde und die jährlich hunderttausende Besucher anzieht. Auf der Suche nach spannenden Daten zu diesem Thema wird man fündig: Mit dem öffentlichen Datensatz von VGChartz.
Um Muster und mögliche Kausalitäten in dem rund 16.000 Fälle großen Datensatz zu finden, eignet sich eine explorative Datenanalyse mithilfe von Visualisierungen via R besonders gut und ist sowohl für Anfänger als auch fortgeschrittene R-User interessant.
Der Datensatz
Die Firma VGChartz betreut insgesamt fünf Webseiten, die sich mit den Erlösen und Verkaufszahlen von Videospielen beschäftigen. Verfügbare Informationen werden in einem Datensatz mit insgesamt 11 Variablen gebündelt zusammengefasst und geben Aufschluss über Name, Genre, Erscheinungsjahr, Spielkonsole (Plattform) und vieles mehr. Der Datensatz bietet ferner Filtermöglichkeiten an, mit denen der Nutzer diverse Ranglisten der einzelnen Verkäufe in den wichtigsten Absatzmärkten Nordamerika, Europa, Japan und dem Rest der Welt erstellen kann. Berücksichtigt wurden nur Spiele, die einen Verkauf von mindestens 100.000 Exemplaren verzeichnen konnten. Der Datensatz bezieht sich auf die Zeitspanne 1980 bis 2016 und kann hier heruntergeladen werden.
Die Vorbereitung
Um mit den Daten in RStudio arbeiten zu können, muss der Datensatz eingelesen werden:
games <-read.csv(
file = "vgsales.csv",
na.strings = "N/A"
)
Die Visualisierung
Für die erste Exploration der Daten eignen sich Visualisierungen besonders gut und können Antworten auf verschiedene Fragestellungen geben: In welchem Genre wurden die meisten Videospiele veröffentlicht? Welches Genre ist das Umsatzstärkste? Und wie entwickeln sich die Verkäufe über die einzelnen Absatzmärkte hinweg im Vergleich?
Fragt man nach R-Paketen zur Visualisierung lautet die Antwort ggplot2. Mithilfe des Pakets können verschiedene Datenvisualisierungen kreiert werden – von basic bis advanced, vom Säulendiagramm bis zum Circular Barplot. Dabei sollte stets die Fragestellung berücksichtigt werden, denn nicht immer erfordert die visuelle Antwort einer Fragestellung ein komplexes Diagramm: weniger ist auch hier mehr. Natürlich bietet auch R selbst integrierte Funktionen zur Grafikerstellung an, die kein weiteres Paket benötigen.
In welchem Genre wurden die meisten Videospiele publiziert?
Um diese Frage zu beantworten eignet sich ein Säulendiagramm, hier umgesetzt mit der Plot-Funktion in Base R. In der folgenden Grafik sind alle zwölf Genres und die Anzahl der dazugehörigen Spiele abgetragen. Die Darstellung verrät die Antwort: Das Genre mit den meisten veröffentlichten Videospielen ist das Action-Genre, gefolgt von den Kategorien „Sports“ und „Misc“ (Miscellaneous).
bar_centers <- genre_tab %>%
sort() %>%
rev() %>%
barplot(
cex.names = .80,
ylim = c(0, 3500),
#main = "Beispiel #4",
border = "transparent",
axes = FALSE
)
axis(
side = 2,
lwd = 0,
lwd.ticks = 1,
las = 1
)
abline(h = c(1000, 2000, 3000), col = "white")
# Titel und Wiederherstellung der Standardparameter
title("In welchem Genre werden die meisten Videospiele veröffentlicht? Internationale Titel im Zeitraum 1980 bis 2016.", outer = TRUE)
par(mfrow = c(1, 1))
Welches Genre generiert über die Range 1980 bis 2016 den größten Umsatz?
Um eine geeignete Übersicht der jährlichen Umsätze in den zwölf Kategorien von 1980 bis 2016 zu erstellen, eignet sich erneut ggplot2. Auf der x-Achse werden die Jahre, auf der y-Achse die summierten globalen Umsätze abgetragen. Mit dieser Übersicht fällt ein Vergleich der Genre-Umsätze leicht: So sieht man besonders in den Genres „Action“ und „Sports“ in den letzten Jahren einen Anstieg und bei allen Genres besonders ab 2015 einen Abstieg.
sales_per_year_genre <- games %>%
group_by(Year, Genre) %>%
summarise(Sales = sum(Global_Sales))
ggplot(sales_per_year_genre) +
aes(x = Year, y = Sales, color = Genre) +
geom_line(size = 1, show.legend = FALSE) +
facet_wrap(~Genre)
Wie entwickeln sich die Verkäufe über die einzelnen Absatzmärkte hinweg im Vergleich?
Eine weitere Möglichkeit der Visualisierung, erstellt erneut mit ggplot2, zeigt die nächste Grafik. Sie zeigt die jährlichen Videospielverkäufe von Nordamerika, Europa, Japan und der Kategorie „Other_Sales“ im Vergleich. Auch hier gilt: Wähle Sie die Form der Darstellung mit Bedacht und immer im Hinblick auf die eigentliche Fragestellung. In der Grafik ist deutlich zu erkennen, dass die Verkäufe in Nordamerika ab dem Jahr 2000 einen starken Anstieg verzeichnen – im Gegensatz zu den Verkaufszahlen in Japan, die bereits über einen längeren Zeitraum keine großen Sprünge aufweisen.
library(tidyr)
games_gathered <- gather(games, Continent, Sales, NA_Sales:Other_Sales)
games_gathered %>% group_by(Year, Continent) %>% summarise(Sales = sum(Sales)) %>%
ggplot(aes(Year, Sales, color = Continent)) +
geom_line() +
xlab("Jahre") +
ylab("Verkäufe in Millionen")
Welche Playstation-Version hat sich am besten verkauft?
Legt man den Fokus auf bestimmte Spieleplattformen, können zusätzliche Informationsgewinne erzielt werden. In der folgenden Grafik werden die Verkaufsdaten der unterschiedlichen Playstationen-Konsolen dargestellt. Gut erkennbar sind nicht nur die Verkaufszahlen der einzelnen Jahre, sondern auch die Release-Phasen der verschiedenen Spielekonsolen.
playstation <- games %>%
filter(Platform %in% c("PS", "PS2", "PS3", "PS4")) %>%
group_by(Year, Platform) %>%
summarise(Sales = sum(Global_Sales, na.rm = TRUE))
ggplot(data = playstation) +
aes(x = Year, y = Sales, color = Platform) +
geom_point() +
geom_line() +
theme_tufte()
Die Möglichkeit weiterer Analysen und Fragestellungen sind an diesem Punkt jedoch längst noch nicht erschöpft. Für erste Gehversuche zum Thema Datenvisualisierungen bietet der Datensatz nicht nur einen guten fachlichen Einstieg, der auch thematisch spannend und leicht verständlich ist. Auch die Rahmenbedingungen stimmen aus methodischer Sicht: Dank der vielen Kategorien können ganz unterschiedliche Grafiken erstellt werden, ohne dass sich der Inhalt ständig wiederholt.
Zusätzlich weckt ein Blick in diesen Datensatz womöglich Kindheits- und Jugenderinnerungen. Beginnen Sie also mit der Analyse, werden Sie zum Data Gamer und ganz wichtig: Vermeiden Sie ein Game Over.
Für weitere Tipps und Tricks zum Thema Datenvisualisierungen mit R empfehlen wir folgenden Beitrag: 5 Praxistipps für anschauliche Data Science-Visualisierungen.
Hier entlang.
Dieser Beitrag ist Teil einer Open-Data-Blogserie, in der wir öffentlich verfügbare Datensätze vorstellen.