Facet-Beschriftungen und -Reihenfolge

Fortgeschrittene Datenvisualisierung mit ggplot2

Rick Scavetta

Founder, Scavetta Academy

Ein neues Dataframe

# Plot
p <- ggplot(msleep2, aes(bodywt_log,
                         brainwt_log)) +
  geom_point(alpha = 0.6, shape = 16) +
  coord_fixed()

p

Fortgeschrittene Datenvisualisierung mit ggplot2

Ein neues Dataframe mit Facets

p +
  facet_grid(rows = vars(vore))

Fortgeschrittene Datenvisualisierung mit ggplot2

Ein neues Dataframe mit Facets

p +
  facet_grid(rows = vars(vore))

Fortgeschrittene Datenvisualisierung mit ggplot2

Schlechte Labels und Reihenfolge

p +
  facet_grid(rows = vars(vore))

Zwei typische Facet-Probleme:

  • Schlechte Labels (z. B. nicht aussagekräftig)
  • Falsche oder unpassende Reihenfolge

Fortgeschrittene Datenvisualisierung mit ggplot2

Schlechte Labels und Reihenfolge

p +
  facet_grid(rows = vars(vore))

Lösungen:

  • Einfach: Labels in ggplot hinzufügen
  • Besser: Faktorvariablen im Dataframe umbenennen und neu anordnen

Fortgeschrittene Datenvisualisierung mit ggplot2

Das Argument labeller

# Standard ist, den Wert zu labeln
p +
  facet_grid(rows = vars(vore), 
             labeller = label_value)

Fortgeschrittene Datenvisualisierung mit ggplot2

Mit label_both erscheint der Variablenname

# Auch Variablennamen ausgeben
p +
  facet_grid(rows = vars(vore), 
               labeller = label_both)

Fortgeschrittene Datenvisualisierung mit ggplot2

Zwei Variablen auf einer Seite

p +
  facet_grid(rows = vars(vore, 
                         conservation))

Fortgeschrittene Datenvisualisierung mit ggplot2

Mit label_context Mehrdeutigkeit vermeiden

p +
  facet_grid(rows = vars(vore,
                         conservation),
               labeller = label_context)

Fortgeschrittene Datenvisualisierung mit ggplot2

Zeilen und Spalten sinnvoll nutzen

p +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation),
             labeller = label_context)

Fortgeschrittene Datenvisualisierung mit ggplot2

Zeilen und Spalten sinnvoll nutzen

p +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation))

Fortgeschrittene Datenvisualisierung mit ggplot2

Zeilen und Spalten sinnvoll nutzen

Fortgeschrittene Datenvisualisierung mit ggplot2

Faktoren umbenennen und neu anordnen

msleep2$conservation <- fct_recode(msleep2$conservation,
                                   Domesticated = "domesticated",
                                   `Least concern` = "lc",
                                   `Near threatened` = "nt",
                                   Vulnerable = "vu",
                                   Endangered = "en")

msleep2$vore = fct_recode(msleep2$vore,
                          Carnivore = "carni",
                          Herbivore = "herbi",
                          Insectivore = "insecti",
                          Omnivore = "omni")
Fortgeschrittene Datenvisualisierung mit ggplot2

Plot mit neuen Labels neu erstellen

# Plot
p <- ggplot(msleep2, aes(bodywt_log,
                         brainwt_log)) +
  geom_point(alpha = 0.6, shape = 16) +
  coord_fixed()

p +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation)) 

Fortgeschrittene Datenvisualisierung mit ggplot2

Plot mit neuen Labels neu erstellen

Fortgeschrittene Datenvisualisierung mit ggplot2

Reihenfolge der Stufen ändern

# Reihenfolge der Stufen ändern:
msleep2$conservation = fct_relevel(msleep2$conservation,
                                   c("Domesticated",
                                     "Least concern",
                                     "Near threatened",
                                     "Vulnerable",
                                     "Endangered"))

Fortgeschrittene Datenvisualisierung mit ggplot2

Plot mit neuer Reihenfolge neu erstellen

Fortgeschrittene Datenvisualisierung mit ggplot2

Lass uns üben!

Fortgeschrittene Datenvisualisierung mit ggplot2

Preparing Video For Download...