Lektionen des Moduls (1/2)
Grammatik und grundlegende Geometrien
Die Datenvisualisierung in R wird von ggplot2 dominiert, einem Paket, das auf der „Grammatik der Grafiken“ (Grammar of Graphics) basiert. Diese Theorie zerlegt Grafiken in unabhängige semantische Komponenten wie Daten, ästhetische Mappings und geometrische Elemente.
Die Struktur von ggplot2
Jede mit ggplot2 erstellte Grafik beginnt mit dem Aufruf der Funktion ggplot(), mit der wir einen Data Frame verknüpfen und über die Funktion aes() (aesthetics) definieren, wie die Spalten des Data Frames auf visuelle Eigenschaften abgebildet werden sollen.
Anschließend fügen wir geometrische Ebenen mit dem Operator + hinzu (Achtung: in ggplot2 wird + und nicht %>% verwendet).
Die Grundstruktur lautet:
ggplot(data = <DATA_FRAME>, mapping = aes(<ÄSTHETIK>)) +
<GEOMETRIE>()
Ästhetische Eigenschaften (aes) und Geometrien (geom_*)
Die Funktion aes() definiert, welche Datenvariablen die Attribute der Grafik steuern:
x: Position auf der horizontalen Achse.y: Position auf der vertikalen Achse.color: Farbe von Punkten oder Linien.fill: Füllfarbe geschlossener Formen (z. B. Balken).size: Größe der Elemente.
Geometrien (geom_) definieren die Art der grafischen Darstellung:
1. Streudiagramm (geom_point())
Ideal, um die Beziehung zwischen zwei numerischen Variablen zu zeigen.
ggplot(df, aes(x = age, y = income)) +
geom_point()
2. Liniendiagramm (geom_line())
Häufig verwendet für zeitliche Daten oder Zeitreihen.
ggplot(df, aes(x = year, y = sales)) +
geom_line()
3. Balkendiagramm (geom_bar() und geom_col())
geom_bar() zählt standardmäßig die Häufigkeit jeder Kategorie, während geom_col() die in einer y-Spalte vorhandenen Werte direkt darstellt.
# Stellt den Wert der Spalte 'sales' für jede 'category' dar
ggplot(df, aes(x = category, y = sales)) +
geom_col()
Probier es aus
Esercizio 1: Einfaches Streudiagramm erstellen
Erstelle ein Streudiagramm (scatter plot) mit dem Data Frame df. Bilde die Spalte height auf der x-Achse und die Spalte weight auf der y-Achse ab. Verwende geom_point().
Hinweis anzeigen
Stelle sicher, dass du ggplot(df, aes(x = height, y = weight)) + geom_point() verwendest
Lösung nach 3 Versuchen verfügbar
Esercizio 2: Datenbasierte Farbe hinzufügen
Ändere das vorherige Diagramm, indem du die Eigenschaft color innerhalb von aes() auf die Spalte gender abbildest, um die Punkte nach Geschlecht einzufärben.
Hinweis anzeigen
Füge color = gender innerhalb von aes() ein, zum Beispiel: aes(x = height, y = weight, color = gender).
Lösung nach 3 Versuchen verfügbar
Esercizio 3: Liniendiagramm
Erstelle ein Liniendiagramm mit df. Bilde die Spalte year auf der x-Achse und die Spalte sales auf der y-Achse ab. Füge die geometrische Ebene geom_line() hinzu.
Hinweis anzeigen
Verwende ggplot(df, aes(x = year, y = sales)) + geom_line()
Lösung nach 3 Versuchen verfügbar
Esercizio 4: Balkendiagramm mit geom_col
Erstelle ein Säulendiagramm zur Visualisierung des Datenwerts. Bilde die Spalte category auf der x-Achse und die Spalte value auf der y-Achse ab. Verwende die Geometrie geom_col().
Hinweis anzeigen
Verwende ggplot(df, aes(x = category, y = value)) + geom_col()
Lösung nach 3 Versuchen verfügbar
Esercizio 5: Mehrere Geometrien kombinieren
In ggplot2 kannst du geometrische Ebenen übereinanderlegen. Erstelle ein Diagramm, das sowohl geom_point() als auch geom_smooth() kombiniert und x_val auf der x-Achse sowie y_val auf der y-Achse abbildet.
Hinweis anzeigen
Füge sowohl geom_point() als auch geom_smooth() getrennt durch ein '+'-Zeichen hinzu.
Lösung nach 3 Versuchen verfügbar