Praktikum 02a - Visualisierung: Streudiagramm

Autor:in

___

Veröffentlichungsdatum

Samstag, 18. Oktober 2025

Tastaturkürzel

Einen neuen Code-chunk hinzufügen Ctrl + Alt + I
Code “Zeile für Zeile” innerhalb eines Code-chunks ausführen Ctrl + Enter
Den gesamten Code-chunk ausführen Ctrl + Shift + Enter
(Aus-)kommentieren Ctrl + Shift + C
Das Pipe |> Ctrl + Shift + M
Der Zuweisungs-Operator <- Alt + -

Packages und Daten Laden

Wir beginnen immer mit library(tidyverse), weil es die neun core Packages enthält, unter anderem ggplot2.

Wir werden mit den penguins Daten arbeiten, die im Package palmerpenguins enthalten sind.

Zusätzlich möchten wir die Function scale_colour_colorblind() benützen und dafür brauchen wir das Package ggthemes.

library(palmerpenguins)
library(ggthemes)
library(tidyverse)

Es gibt mehrere Methoden Daten zu erkunden:

glimpse(penguins)
Rows: 344
Columns: 8
$ species           <fct> Adelie, Adelie, Adelie, Adelie, Adelie, Adelie, Adel…
$ island            <fct> Torgersen, Torgersen, Torgersen, Torgersen, Torgerse…
$ bill_length_mm    <dbl> 39.1, 39.5, 40.3, NA, 36.7, 39.3, 38.9, 39.2, 34.1, …
$ bill_depth_mm     <dbl> 18.7, 17.4, 18.0, NA, 19.3, 20.6, 17.8, 19.6, 18.1, …
$ flipper_length_mm <int> 181, 186, 195, NA, 193, 190, 181, 195, 193, 190, 186…
$ body_mass_g       <int> 3750, 3800, 3250, NA, 3450, 3650, 3625, 4675, 3475, …
$ sex               <fct> male, female, female, NA, female, male, female, male…
$ year              <int> 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007…
# summary(penguins)

Streudiagramm

Wir wollen ein Streudiagramm von body_mass_g gegen flipper_length_mm erstellen.

ggplot(
  data = penguins,
  mapping = aes(
    x = flipper_length_mm,
    y = body_mass_g
  )
) +
  # Streudiagramm
  geom_point(mapping = aes( 
    colour = species,
    shape = species
  )) +
  # Linie
  geom_smooth(method = "lm") +
  # Titeln
  labs(
    title = "Body mass and flipper length",
    subtitle = "Dimensions for Adelie, Chinstrap, and Gentoo penguins",
    x = "Flipper length (mm)",
    y = "Body mass (g)",
    colour = "Species",
    shape = "Species"
  ) +
  # farbenblindenfreundliche Farbgebung
  scale_colour_colorblind()

mapping = aes(xxx) kann in ggplot() oder geom_xxx() sein. Sorgfältig auswählen!

Ihr seid dran!

  1. Erstelle ein Streudiagramm von bill_depth_mm gegen bill_length_mm. Das heisst:
  • Erstelle ein Streudiagramm mit bill_depth_mm auf der y-Achse und bill_length_mm auf der x-Achse.

  • Beschreibe die Beziehung zwischen diesen beiden Variablen mit geom_smooth().

  • Ordne die Variable species zur colour-Aesthetic.

# ggplot(data = ___,
#        mapping = aes(
#          x = ___,
#          y = ___,
#          colour = ___
#        )) +
#   geom____() +
#   geom____(method = "lm") 
  1. Füge einen Titel, Achsen-Titel und eine caption zu dem Diagramm hinzu: “Die Daten stammen aus dem Paket palmerpenguins”. Tipp: wirf einen Blick in die Dokumentation von labs().
# ggplot(data = ___,
#        mapping = aes(
#          x = ___,
#          y = ___,
#          colour = ___
#        )) +
#   geom____() +
#   geom____(method = "lm") + 
#   ___(___) # ?labs
  1. Benutze scale_colour_colorblind() um die Farben zu änderen und theme_light() um den Aspekt zu verbessern.
# ggplot(data = ___,
#        mapping = aes(
#          x = ___,
#          y = ___,
#          colour = ___
#        )) +
#   geom____() +
#   geom____(method = "lm") + 
#   ___(___) + # ?labs
#   ___ # colour-blind friendly colours

Beachtet, dass ihr die Argumente data und mapping in ggplot() weglassen könntet.

  1. Speichert das Plot im png-Format.
# ggsave(___)