Blog

R Markdown Template für Business Reports

In diesem Beitrag möchte ich das R Markdown Template für Business-Reports von INWTlab vorstellen. Natürlich gibt es bereits einige R Markdown Templates im World Wide Web, aber mir fehlte eine Vorlage, die speziell im Business-Bereich einsetzbar ist, und in dem Farben, Cover und Logo leicht an das Corporate Design angepasst werden können. In vielen Unternehmen ist MS Word heutzutage noch DAS Reporting-Tool, sodass das Erscheinungsbild insgesamt an MS Word orientiert ist. Die Vorlage kann zusätzlich erweitert werden, indem die tex-Datei defs.tex angepasst wird. In meinen Augen ist eine Tex-Datei viel einfacher zu verstehen und zu programmieren als Style-Dateien (.sty), insbesondere für noch nicht so erfahrene Latex-Nutzer.

Installation

Das Paket kann über das INWTlab Github Repository ireports werden. Falls Sie devtools noch nicht installiert haben, tun Sie dies bitte zuerst.

# install.packages("devtools")
devtools::install_github("INWTlab/ireports")

Nach der Installation des Pakets können Sie das Template bereits in der Standardversion verwenden, indem Sie R Markdown... > From Template > INWTlab Business Report auswählen und dann auf OK klicken. Als Ergebnis erscheint ein neues Rmd-Skript, das Sie sofort kompilieren können. Der Standardbericht sieht folgendermaßen aus:

Markdown Template Cover
Markdown Template Erste Seite

Nutzung

Text und Grafiken

Sie können wie in jedem anderen R Markdown-Dokument Text schreiben und Grafiken hinzufügen.

Tabellen

Um Tabellen im MS Word-Stil zu generieren, kann folgender Code-Schnipsel verwendet werden. Dieser erstellt eine Tabelle aus dem Datensatz iris.

tab <- xtable(head(iris, n = 20), align = "|C|C|C|C|C|C|")

addtorow <- list()
addtorow$pos <- list()
addtorow$pos[[1]] <- -1
addtorow$command <- c("\\rowcolor{colorTwo}")

print(tab,
      include.rownames = FALSE,
      tabular.environment = "tabularx",
      width = "\\textwidth",
      comment = FALSE,
      add.to.row = addtorow)

Der Code-Schnipsel besteht aus drei Teilen:

  1. Die Tabellenerstellung: mit xtable() erstelle ich ein Objekt namens tab der Klasse xtable. Stellen Sie sicher, dass Sie die align-Option korrigiert wird, wenn sich die Anzahl der Spalten ändert.
  2. Die Farbe der Tabellenkopfzeile: Ich färbe die Tabellenkopfzeile über einen Latex-Code-Schnipsel ein, der in den Header des Latex-Tabellen-Codes eingefügt wird. Die Option add.to.row in print() ermöglicht es mir, einen Code-Schnipsel an beliebiger Stelle in den Latex-Code einzufügen, indem der jeweilige Befehl und dessen gewünschte Position in einer separaten Liste (hier addtorow) definiert wird.
  3. Die Ausgabe der Tabelle.

Wenn Sie also eine neue Tabelle erstellen, müssen Sie lediglich das xtable-Objekt in der ersten Zeile erstellen und sicherstellen, dass für die Ausrichtung die richtige Anzahl von Spalten angegeben ist.

Anpassung

Logo und Cover

Wenn Sie eine neue R-Markdown-Datei aus dem Template erstellen, kreiert RStudio einen neuen Ordner in Ihrem Arbeitsverzeichnis (das aktuelle Verzeichnis kann mit getwd() abgerufen werden). In diesem Ordner können Sie logo.png und cover.png mit Ihren eigenen Dateien überschreiben. Denken Sie daran, Ihre Dateien entweder genau wie meine zu benennen oder die Dateinamen im yaml-Header zu korrigieren. Die empfohlene Größe für das Logo beträgt 350 x 130 Pixel. Das Cover sollte 1654 x 2339 Pixel haben. Falls Sie andere Dimensionen verwenden möchten, müssen Sie die tex-Datei defs.tex anpassen.

Colors

Derzeit werden zwei Farben verwendet, iblue und igray. Wenn Sie Ihre Unternehmensfarben übernehmen möchten, ändern Sie die Farbwerte für iblue und igray im yaml-Header.

Mitwirken

Gerne können Sie bei der Verbesserung dieses Templates helfen, erstellen Sie einfach ein Issue auf GitHub oder senden Sie einen Pull-Request.