- Die Lernenden können Querverweise zu Diagrammen und Tabellen in Quarto Dokumenten erstellen.
- Die Lernenden können Folien im Format revealjs HTML erstellen.
- Die Lernenden können Metadaten eines Quarto Dokuments anpassen.
rstatsZH - Data Science mit R
Nov 19, 2024
Besuche quarto.org!
Besuche quarto.org!
Besuche quarto.org!
Metadaten: YAML
Text: Markdown
Code: Ausgeführt via knitr
(R) oder jupyter
(python)
Füge alles zusammen und du erhältst anschauliche, schöne und nützliche Ergebnisse!
DE: wortgetreue Progammierung
Bei der wortgetreuen Programmierung wird die Programmlogik in einer menschlichen Sprache mit eingeschlossenen Codeschnipseln geschrieben.
---
title: "ggplot2 demo"
date: "19/11/2024"
format: html
---
## Pinguine
Es gibt einen linearen Zusammenhang zwischen Länge und Tiefe des Schnabels, abhängig von der Art.
```{r}
library(ggplot2)
library(palmerpenguins)
ggplot(penguins, aes(x = bill_length_mm,
y = bill_depth_mm,
color = species)) +
geom_point()
```
“Yet Another Markup Language” oder “YAML Ain’t Markup Language” wird verwendet, um Metadaten auf Dokumentebene bereitzustellen.
Einrückung ist wichtig!
:
Es gibt mehrere Möglichkeiten, gültiges YAML zu formatieren:
:
format: html
mit Auswahlen, die mit korrekter Einrückung erfolgenLint oder ein Linter ist ein statisches Code-Analyse-Tool, das Programmierfehler, Bugs, stilistische Fehler und verdächtige Konstrukte aufzeigt.
RStudio + VSCode bieten eine umfangreiche Tab-Vervollständigung – fange mit einem Wort an und tippe auf die Tab-Taste, um es zu vervollständigen, oder Strg + Leertaste
um alle möglichen Optionen zu sehen.
Viele YAML-Felder sind bei verschiedenen Ausgaben gleich
Aber auch jeder Ausgabetyp hat einen eigenen Satz an gültigen YAML-Feldern und Optionen
Komplette Liste: quarto.org/docs/reference/formats/html
Markdown Syntax | Ausgabe | |
---|---|---|
|
italics and bold | |
|
superscript2 / subscript2 | |
|
||
|
verbatim code |
Markdown Syntax | Ausgabe | |
---|---|---|
|
Header 1 |
|
|
Header 2 |
|
|
Header 3 |
|
|
Header 4 |
|
|
Header 5 |
|
|
Header 6 |
Es gibt verschiedene Arten von “Links” oder Hyperlinks.
Markdown
Ausgabe
Du kannst [benannte Hyperlinks] (https://quarto.org/), direkte URLs wie https://quarto.org/ und Links zu anderen Orten in das Dokument einbetten. Die Syntax für das Einbetten eines Inline-Bildes ist ähnlich: .
Ungeordnete Liste:
Ausgabe
Geordnete Liste:
Markdown:
> Let us change our traditional attitude to the construction of programs: Instead of imagining that our main task is to instruct a computer what to do, let us concentrate rather on explaining to human beings what we want a computer to do.
> - Donald Knuth, Literate Programming
Output:
Let us change our traditional attitude to the construction of programs: Instead of imagining that our main task is to instruct a computer what to do, let us concentrate rather on explaining to human beings what we want a computer to do. - Donald Knuth, Literate Programming
Die Nummerierung und Formatierung von Fussnoten wird unterstützt.
Hier ist eine Inline-Notiz.^[Inline-Notizen sind einfacher zu schreiben,
da man nicht erst einen Bezeichner auswählen und nach unten gehen muss, um
um die Notiz zu schreiben.]
Hier ist eine Inline-Notiz.1
Verwende den visuellen Editor-Modus (Visual editor)
Für das Hinzufügen von Fussnoten wird der visuelle Editor-Modus empfohlen.
01-markdown-syntax.qmd
01-markdown-syntax.qmd
und klicke darauf, um sie im Fenster oben links zu öffnen.20:00
Bitte steh auf und beweg dich. Lasst eure E-Mails in Frieden ruhen.
10:00
Bild erzeugt mit DALL-E 3 by OpenAI
r
) wird zwischen geschweiften Klammern {r}
angegeben#|
angegeben werden (Hashpipe)echo
echo
zeigt den Code an, wenn sie auf true
gesetzt ist, und verbirgt ihn, wenn sie auf false
gesetzt ist.Markdown:
| Right | Left | Default | Center |
|------:|:-----|---------|:------:|
| 12 | 12 | 12 | 12 |
| 123 | 123 | 123 | 123 |
| 1 | 1 | 1 | 1 |
Verwende den visuellen Editor-Modus (Visual editor)
Für das Hinzufügen von Fussnoten wird der visuelle Editor-Modus empfohlen.
Ausgabe:
Right | Left | Default | Center |
---|---|---|---|
12 | 12 | 12 | 12 |
123 | 123 | 123 | 123 |
1 | 1 | 1 | 1 |
Das Paket knitr kann Datenrahmen in Tabellen umwandeln mit knitr::kable()
:
species | island | n |
---|---|---|
Adelie | Biscoe | 44 |
Adelie | Dream | 56 |
Adelie | Torgersen | 52 |
Chinstrap | Dream | 68 |
Gentoo | Biscoe | 124 |
Wenn du umfangreichere Tabellen möchtest, probiere das gt-Paket und alles, was es bietet!
species | island | bill_length_mm | bill_depth_mm | flipper_length_mm | body_mass_g | sex | year |
---|---|---|---|---|---|---|---|
Adelie | Torgersen | 39.1 | 18.7 | 181 | 3750 | male | 2007 |
Adelie | Torgersen | 39.5 | 17.4 | 186 | 3800 | female | 2007 |
Adelie | Torgersen | 40.3 | 18.0 | 195 | 3250 | female | 2007 |
Adelie | Torgersen | NA | NA | NA | NA | NA | 2007 |
Adelie | Torgersen | 36.7 | 19.3 | 193 | 3450 | female | 2007 |
Adelie | Torgersen | 39.3 | 20.6 | 190 | 3650 | male | 2007 |
![Pinguine spielen mit einem Quarto-Ball](img/md-09/penguins-quarto-ball.png)
Markdown:
::: {#fig-penguins layout-ncol=2}
![Blauer Pinguin](img/md-09/blue-penguin.png){#fig-blue width="250px"}
![Orangefarbener Pinguin](img/md-09/orange-penguin.png){#fig-orange width="250px"}
Zwei Pinguine
:::
Ausgabe:
An Orten wie Markdown, YAML oder beim Einlesen von Dateien musst du absolute oder relative Dateipfade verwenden:
"/Users/lars/uebungen"
- Auf wessen Computer wird das funktionieren?Relativ = Besser:
"../
= ein Verzeichnis nach oben, ../../
= zwei Verzeichnisse nach oben, etc./..
oder /
= beginnen im “root”-Verzeichnis deines aktuellen ComputersVerwende das here-Paket, um auf das Projektverzeichnis zu verweisen, da here::here()
immer im obersten Verzeichnis einer .Rproj
beginnt:
[1] "/Users/lschoebitz/Documents/gitrepos/gh-org-rstatszh-k009/website"
Unterstützen Leser:innen sich in deinem Dokument zurechtzufinden, indem du nummerierte Verweise und Hyperlinks zu Elementen wie Abbildungen und Tabellen einfügst.
Querverweise Schritte:
#| tbl-cap:
oder #| fig-cap:
.#| label:
beginnend mit fig-
oder tbl-
.@fig-...
oder @tbl-...
.Das Vorhandensein der Beschriftung (Blauer Pinguin
) und der Bezeichnung (#fig-blue-penguin
) machen diese Abbildung referenzierbar:
Markdown:
Das Vorhandensein der Überschrift (Ein paar Pinguine
) und der Bezeichnung (#tbl-pinguine
) machen diese Tabelle referenzierbar:
Markdown:
Ausgabe:
Siehe Table 1 für Daten über einige Pinguine.
species | island | bill_length_mm | bill_depth_mm | flipper_length_mm | body_mass_g | sex | year |
---|---|---|---|---|---|---|---|
Adelie | Torgersen | 39.1 | 18.7 | 181 | 3750 | male | 2007 |
Adelie | Torgersen | 39.5 | 17.4 | 186 | 3800 | female | 2007 |
Adelie | Torgersen | 40.3 | 18.0 | 195 | 3250 | female | 2007 |
Adelie | Torgersen | NA | NA | NA | NA | NA | 2007 |
Adelie | Torgersen | 36.7 | 19.3 | 193 | 3450 | female | 2007 |
Adelie | Torgersen | 39.3 | 20.6 | 190 | 3650 | male | 2007 |
#| tbl-cap:
oder #| fig-cap:
.#| label:
beginnend mit fig-
oder tbl-
.@fig-...
oder @tbl-...
.02-querverweise.qmd
02-querverweise.qmd
und klicke darauf, um sie im Fenster oben links zu öffnen.20:00
Ja!
Bitte steh auf und beweg dich. Lasst eure E-Mails in Frieden ruhen.
10:00
Bild erzeugt mit DALL-E 3 by OpenAI
Metadaten: YAML
Text: Markdown
Code: Ausgeführt via knitr
(R) oder jupyter
(python)
Füge alles zusammen und du erhältst anschauliche, schöne und nützliche Folien!
03-folien.qmd
03-folien.qmd
und klicke darauf, um sie im Fenster oben links zu öffnen.30:00
03-folien.qmd
Mach da weiter, wo wir aufgehört haben, und:
Ändere den Folien Übergang (transition style) zwischen den Folien (auf quarto.org: Suche nach “slide transitions” im Suchfeld oben rechts)
Füge Folien Nummern (slide numbers) zu deinen Folien (auf quarto.org: Suche nach “slide numbers” im Suchfeld oben rechts)
10:00
revealjs
für HTML-Folien
xaringan
, aber mit Pandoc-nativer Syntaxbeamer
für LaTeX-Folien
PowerPoint für den Fall, dass du über MS Office zusammenarbeiten musst
Kann ich noch etwas zum heutigen Modul erklären?
05:00
Folien erstellt mit revealjs und Quarto: https://quarto.org/docs/presentations/revealjs/
Zugang zu Folien als PDF auf GitHub
Alle Materialien sind lizenziert unter Creative Commons Attribution Share Alike 4.0 International.