Grundlagen von Themes

Einführung in die Datenvisualisierung mit ggplot2

Rick Scavetta

Founder, Scavetta Academy

Die Themes-Ebene

  • Alle nicht-datenbezogenen Elemente
  • Visuelle Elemente, die nicht Teil der Daten sind
Einführung in die Datenvisualisierung mit ggplot2

Die Themes-Ebene

  • Alle nicht-datenbezogenen Elemente
  • Visuelle Elemente, die nicht Teil der Daten sind

Drei Typen

Typ
text
line
rectangle
Einführung in die Datenvisualisierung mit ggplot2

Die Themes-Ebene

  • Alle nicht-datenbezogenen Elemente
  • Visuelle Elemente, die nicht Teil der Daten sind

Drei Typen

Typ geändert mit
text element_text()
line element_line()
rectangle element_rect()
Einführung in die Datenvisualisierung mit ggplot2

Ein Diagramm für den Anfang...

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + 
  geom_jitter(alpha = 0.6)

Einführung in die Datenvisualisierung mit ggplot2

Die Textelemente


text
  axis.title 
    axis.title.x
      axis.title.x.top
      axis.title.x.bottom 
    axis.title.y
      axis.title.y.left
      axis.title.y.right 
  title 
    legend.title 
    plot.title
    plot.subtitle 
    plot.caption 
    plot.tag
  axis.text 
    axis.text.x 
      axis.text.x.top
      axis.text.x.bottom 
    axis.text.y
      axis.text.y.left
      axis.text.y.right
  legend.text
  strip.text
    strip.text.x
    strip.text.y
Einführung in die Datenvisualisierung mit ggplot2

Die Textelemente

theme(
text, 
  axis.title, 
    axis.title.x,
      axis.title.x.top, 
      axis.title.x.bottom, 
    axis.title.y, 
      axis.title.y.left,
      axis.title.y.right, 
  title, 
    legend.title, 
    plot.title,
    plot.subtitle, 
    plot.caption, 
    plot.tag, 
  axis.text, 
    axis.text.x, 
      axis.text.x.top,
      axis.text.x.bottom, 
    axis.text.y, 
      axis.text.y.left, 
      axis.text.y.right,
  legend.text,
  strip.text, 
    strip.text.x, 
    strip.text.y)
Einführung in die Datenvisualisierung mit ggplot2

Anpassen von Theme-Elementen

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + 
  geom_jitter(alpha = 0.6) +
  theme(axis.title = element_text(color = "blue"))

Einführung in die Datenvisualisierung mit ggplot2

Ein Diagramm für den Anfang...

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + 
  geom_jitter(alpha = 0.6)

Einführung in die Datenvisualisierung mit ggplot2

Linienelemente

theme(
line,
  axis.ticks,
    axis.ticks.x, 
      axis.ticks.x.top,
      axis.ticks.x.bottom,
    axis.ticks.y,
      axis.ticks.y.left, 
      axis.ticks.y.right,
    axis.line,
      axis.line.x, 
        axis.line.x.top,
        axis.line.x.bottom, 
      axis.line.y,
        axis.line.y.left, 
        axis.line.y.right, 
  panel.grid,
    panel.grid.major, 
      panel.grid.major.x, 
      panel.grid.major.y, 
    panel.grid.minor,
      panel.grid.minor.x,
      panel.grid.minor.y)
Einführung in die Datenvisualisierung mit ggplot2

Ein Diagramm für den Anfang...

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + 
  geom_jitter(alpha = 0.6)

Einführung in die Datenvisualisierung mit ggplot2

Rechteckige Elemente

theme(
rect,
  legend.background, 
  legend.key,
  legend.box.background, 
  panel.background,
  panel.border,
  plot.background, 
  strip.background, 
    strip.background.x, 
    strip.background.y)
Einführung in die Datenvisualisierung mit ggplot2

Hierarchische Benennung spiegelt Vererbungsregeln wider

z.B. Text

text
  axis.title 
    axis.title.x
      axis.title.x.top
      axis.title.x.bottom 
    axis.title.y
      axis.title.y.left
      axis.title.y.right 

z.B. Linien

line
  axis.ticks
    axis.ticks.x 
      axis.ticks.x.top
      axis.ticks.x.bottom
    axis.ticks.y
      axis.ticks.y.left,
      axis.ticks.y.right
    axis.line
      axis.line.x 
        axis.line.x.top
        axis.line.x.bottom
      axis.line.y
        axis.line.y.left 
        axis.line.y.right
Einführung in die Datenvisualisierung mit ggplot2

element_blank()

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + 
  geom_jitter(alpha = 0.6) + 
  theme(line = element_blank(),
        rect = element_blank(),
        text = element_blank())

Einführung in die Datenvisualisierung mit ggplot2

Lass uns üben!

Einführung in die Datenvisualisierung mit ggplot2

Preparing Video For Download...