Treemap: Je größer die Zahl, desto größer die Fläche

Eine Treemap stellt Zahlenwerte als verschachtelte Rechtecke dar, wobei die Fläche der Rechtecke die Größenverhältnisse der Zahlen abbildet. R verwendet dafür das Package treemap. Als Beispiel wird hier der Bundeshaushalt des Jahres 2015 visualisiert.
Erfunden hat diese Visualisierungsform in den frühen 1990er Jahren Ben Shneiderman, Professor an der Universität von Maryland. Es sind nur wenige Zeilen Code nötig.

library(gdata)
library(treemap)
bundeshaushalt<-read.xls("daten/bundeshaushalt_2015.xlsx",sheet=1, encoding="UTF-8")
bundeshaushalt$Betrag <- as.numeric(gsub("[^[:alnum:]///' ]", "",  
                                         as.character(bundeshaushalt$Betrag))) # Kommas und Euro entfernen
options(scipen = 999) # scientific notation off
treemap(bundeshaushalt,title="Bundeshaushalt 2015",index="Titel",type="index",
	vSize="Betrag",palette="YlOrRd",aspRatio=1.9,inflate.labels=T)

Treemap des Bundeshaushalts

Klicke auf das Bild für eine vergrößerte Darstellung

Das Skript: Zunächst musst du das Package treemap installieren und dann mit library() in das Skript einbinden. gdata ist für das Einlesen von Excel-Dateien notwendig. Die Daten für den Bundeshaushalt stammen von der Seite http://bund.offenerhaushalt.de. Die Daten wurden in eine Excel-Tabelle übertragen und von dort über die Zeile

bundeshaushalt<-read.xls("daten/bundeshaushalt_2015.xlsx",sheet=1, encoding="UTF-8")

in einen Data Frame importiert. Dabei ist das €-Zeichen ziemlich lästig und wird daher in der nächsten Zeile mit Hilfe der Funktion gsub() zusammen mit den Kommas als Tausender-Trennzeichen eliminiert. Im nächsten Schritt sorgt options(scipen = 999) dafür, dass die Zahlen ausgeschieben wenden. Schließlich wird der eigentliche Plot erstellt, wobei verschiedene Parameter wie Titel und Farbpalette übergeben werden. Die Schriftgrößen werden automatisch angepasst.
Die Grafik zeigt deutlich, wohin der größte Brocken der Staatsausgaben geht. Der Bereich "Arbeit und Soziales" macht rund 40 Prozent aus. Weitere große Batzen sind die Bereiche Verteidigung, die Zinslast durch die Verschuldung und Verkehr und digitale Infrastruktur. Insgesamt betrugen die Ausgaben 299.100.000.000 Euro, das sind etwa 3700 Euro pro Bundesbürger.

Teile diesen Beitrag!