diff --git a/_freeze/folien/md-02-datenvisualisierung/execute-results/html.json b/_freeze/folien/md-02-datenvisualisierung/execute-results/html.json
index 4a7de9e..1b5c600 100644
--- a/_freeze/folien/md-02-datenvisualisierung/execute-results/html.json
+++ b/_freeze/folien/md-02-datenvisualisierung/execute-results/html.json
@@ -2,7 +2,7 @@
"hash": "9685591acc71861237d90ea1f831af91",
"result": {
"engine": "knitr",
- "markdown": "---\ntitle: \"{{< var md-02.titel >}}\"\nsubtitle: \"{{< var course.long-titel >}}\"\nauthor: \"Lars Schöbitz\"\ndate: \"2024-10-01\"\ndate-format: \"MMM D, YYYY\"\nformat: \n revealjs: \n theme: slides.scss\n transition: fade\n slide-number: true\n chalkboard: true\nfooter: \"[{{< fa link >}} {{< var course.site-short >}}]({{< var course.site >}})\"\neditor: source\nexecute:\n freeze: auto\nparams:\n modul: 2\neditor_options: \n chunk_output_type: console\n---\n\n\n\n::: {.cell}\n\n:::\n\n\n\n## {background-image=\"img/md-02/r_rollercoaster.png\" background-size=\"contain\"}\n\n::: aside\nArtwork by [\\@allison_horst](https://twitter.com/allison_horst)\n:::\n\n# Lösung von Coding Problemen {background-color=\"#4C326A\"}\n\n## Tipps für Suchmaschinen\n\n- Verwende Verben, die beschreiben, was du tun willst\n- Sei präzise\n- Füge R zur Suchanfrage hinzu\n- Füge den Namen des R-Pakets zur Suchanfrage hinzu (z.B ggplot2)\n- Scrolle durch die ersten 5 Ergebnisse (wähle nicht nur das erste aus)\n- Schreibe die Suchanfrage auf Englisch\n\n**Beispiel: How to remove a legend from a plot in R ggplot2?**\n\n## Stack Overflow\n\n::: incremental\n::: columns\n::: {.column width=\"47.5%\"}\n**Was ist das?**\n\n- Das größte Unterstützungsnetzwerk für (Coding-)Probleme\n- Kann anfangs einschüchternd sein\n- Upvote-System\n:::\n\n::: {.column width=\"5%\"}\n:::\n\n::: {.column width=\"47.5%\"}\n**Arbeitsablauf**\n\n- Lies dir zuerst kurz die Frage durch, die gepostet wurde.\n- Lies dir dann die Antwort durch, die als \"richtig\" markiert wurde.\n- Lies dir dann eine oder zwei weitere Antworten mit vielen Zustimmungen durch.\n- Sieh dir dann die \"linked posts\" an.\n:::\n:::\n:::\n\n## Tipps für AI Werkzeuge\n\n- Verwende Verben, die beschreiben, was du tun willst\n- Präzise sein ist weniger wichtig\n- Füge R zur Suchanfrage hinzu\n- Füge den Namen des R-Pakets zur Suchanfrage hinzu (z.B ggplot2)\n- Schreibe die Suchanfrage auf Englisch oder Deutsch\n\n> Wie entferne ich eine Legende aus einem Diagramm in R ggplot2? \n> Legende in R ggplot2 entfernen.\n\n\n## Andere Quellen für Hilfe\n\n::: columns\n::: {.column width=\"50%\"}\n- Posit Community Forum: \n- Dokumentation Webseiten: \n- Mastodon tag: [#rstats](https://fosstodon.org/tags/rstats)\n:::\n\n::: {.column width=\"50%\"}\n![](img/md-02/dalle3-image-colorful-coding.png)\n:::\n:::\n\n::: footer\nImage generated with [DALL-E 3 by OpenAI](https://openai.com/blog/dall-e/)\n:::\n\n## {background-image=\"img/md-02/code_hero.jpg\" background-size=\"contain\"}\n\n::: footer\nArtwork by [\\@allison_horst](https://www.allisonhorst.com/)\n:::\n\n## Lernziele (für diese Woche)\n\n\n\n::: {.cell}\n\n:::\n\n::: {.cell}\n1. Die Lernenden können beschreiben wie Variablen eines Datensatzes mittels des R-Package ggplot2 den visuellen Eigenschaften eines Diagramms zugeordnet werden (EN: aesthetic mapping).\n2. Die Lernenden können die Skalierungen (Farbe, Achsen) eines Diagramms kontrollieren.\n3. Die Lernenden können drei verschiedene Diagrammtypen (Balkendiagramm, Histogramm, Punkt) und ihre Anwendungsfälle vergleichen.\n4. Die Lernenden können den DAP navigieren um relevante Software selbst auf ihren Arbeitsgeräten zu installieren. Sie können sich das R-Bundle aus dem Serviceportal bestellen und wissen wie sie Probleme melden.\n:::\n\n\n\n# Digitaler Arbeitsplatz / R Community {background-color=\"#4C326A\"}\n\n## Triff das STAT\n\n::: columns\n::: {.column width=\"50%\"}\n**Philipp Bosch**\n\n![](img/md-02/bild_philipp.png){fig-alt=\"\" fig-align=\"center\" width=\"33%\"}\n\n- Job ohne Excel gesucht 🧮\n- Community Mensch 💙\n- Data Literacy Fan 💡\n:::\n\n::: {.column width=\"50%\"}\n**Thomas Knecht**\n\n![](img/md-02/bild_dinacon_thomas.png){fig-alt=\"\" fig-align=\"center\" width=\"50%\"}\n\n- R-Support gegen Cookies 🍪\n- R-Infrastruktur Guru 🧙\n- Debug-Master & Kartentyp 🗺️\n:::\n:::\n\n## Installation auf dem DAP\n\nUm in den vollen Genuss der R-Analyse Umgebung zu kommen, musst du im Serviceportal folgende Module bestellen:\n\n::: columns\n::: {.column width=\"30%\"}\n![](img/md-02/serviceportal_servicekatalog.PNG){width=\"80%\"}\n:::\n\n::: {.column width=\"70%\"}\n![](img/md-02/serviceportal_R.PNG)\n\n![](img/md-02/serviceportal_RTools.PNG)\n\n![](img/md-02/serviceportal_tinytex.PNG)\n:::\n:::\n\n## Community\n\nIm Kanton haben wir eine Community of Practice für R, welche ihre digitale Heimat in einem Teams-Kanal hat.\n\n[Hier geht's zum Kanal](https://teams.microsoft.com/l/channel/19%3Ab743f31273fb4d08b779263e12c27316%40thread.tacv2/R%20User?groupId=0ffbe0c2-40db-49df-8043-60dac2139834&tenantId=a020d0ae-094a-4d44-b66c-ac3fe8e90c58)\n\nIm Kanal könnt ihr:\n\n- Fragen rund um R stellen (Stackoverflow des Kantons)\n- Neue Infos zum R-Bundle erhalten\n- Up-to-date bleiben was in der Community läuft\n\n## R-Fachgruppe\n\n::: columns\n::: {.column width=\"50%\"}\nAufgaben\n\n- Updates des R-Bundles\n- Weiterentwicklung der Installation anhand eurer Bedürfnisse\n- Support bei Installationsproblemen\n:::\n\n::: {.column width=\"50%\"}\nVertretungen\n\n- Thomas Knecht (JI)\n\n- Philipp Bosch (JI)\n\n- Sarah Gerhard (BI)\n\n- Miriam Hofstetter (VD)\n\n- Andreas Gubler (BD)\n\n- Gianluca Macauda (GD)\n\n- Fabian Berger (SD)\n\n- Jörg Sintermann (BD)\n\n- Nina Schnyder (JI)\n\n- Gian-Marco Alt (BD)\n\n- Joëlle Ninon Albrecht (JI)\n:::\n:::\n\n## Ihr seid dran: Fragen \n\n
\n\n::: {.hand-purple-large style=\"text-align: center;\"}\nStellt eure Fragen an Thomas und Philipp\n:::\n\n\n## Pause machen\n\n[Bitte steh auf und beweg dich.]{.highlight-yellow} Lasst eure E-Mails in Frieden ruhen.\n\n![](img/md-02/emails-rest-in-peace.png){width=\"50%\"}\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n
\n```\n\n:::\n:::\n\n\n\n::: footer\nBild erzeugt mit [DALL-E 3 by OpenAI](https://openai.com/blog/dall-e/)\n:::\n\n# Explorative Datenanalyse mit `ggplot2` {background-color=\"#4C326A\"}\n\n## R Paket `ggplot2`\n\n::: columns\n::: {.column width=\"50%\"}\n- **ggplot2** ist das Datenvisualisierungspaket von tidyverse\n- gg\" in \"ggplot2\" steht für \"Grammar of Graphics\"\n- Inspiriert durch das Buch **Grammar of Graphics** von Leland Wilkinson\n- **Dokumentation:** https://ggplot2.tidyverse.org/\n- **Buch**: https://ggplot2-book.org\n:::\n\n::: {.column width=\"50%\"}\n![](img/md-02/ggplot2-part-of-tidyverse.png)\n\n\n\n::: {.cell}\n\n:::\n\n\n:::\n:::\n\n## Ich bin dran: Arbeiten mit Quarto und R\n\n
\n\n::: {.hand-purple-large style=\"text-align: center;\"}\nZurücklehnen und genießen!\n:::\n\n## Code Struktur\n\n- `ggplot()` ist die Hauptfunktion von ggplot2\n- Plots werden in Schichten aufgebaut\n- Die Struktur des Codes für Plots lässt sich wie folgt zusammenfassen\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = [datensatz], \n mapping = aes(x = [x-variable], \n y = [y-variable])) +\n geom_xxx() +\n andere Optionen \n```\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-8-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder)\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-9-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes()) \n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-10-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes(x = continent,\n y = lifeExp)) \n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-11-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes(x = continent,\n y = lifeExp)) +\n geom_boxplot() \n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-12-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes(x = continent,\n y = lifeExp)) +\n geom_boxplot() +\n theme_minimal()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-13-1.png){width=672}\n:::\n:::\n\n\n\n# Polls {background-color=\"#4C326A\"}\n\n## Poll 1: Was stellt die dicke Linie innerhalb des Kastens eines Boxplots dar? {.smaller}\n\n::: columns\n::: {.column width=\"30%\"}\n1. Ich weiß es nicht\n2. der Mittelwert der Beobachtungen\n3. die Mitte der Box\n4. der Median der Beobachtungen\n:::\n\n::: {.column width=\"70%\"}\n\n\n::: {.cell}\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-14-1.png){width=672}\n:::\n:::\n\n\n:::\n:::\n\n## Poll 2: Wie viel Prozent der Beobachtungen befinden sich innerhalb der Box eines Boxplots (Interquartilsbereich)? {.smaller}\n\n::: columns\n::: {.column width=\"30%\"}\n1. Ich weiß es nicht\n2. 25%\n3. hängt vom Median ab\n4. 50%\n:::\n\n::: {.column width=\"70%\"}\n\n\n::: {.cell}\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-15-1.png){width=672}\n:::\n:::\n\n\n:::\n:::\n\n## Poll 3: Was ist der Median einer Gruppe von Beobachtungen? {.smaller}\n\n1. Ich weiß es nicht\n2. Der Median ist der am häufigsten vorkommende Wert in einem Datensatz.\n3. Der Median ist die Summe aller Werte in einem Datensatz geteilt durch die Anzahl der Beobachtungen.\n4. Der Median ist der Punkt, über und unter dem die Hälfte (50%) der Beobachtungen liegt.\n\n## Boxplot, erklärt\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n![Diagramm, das zeigt, wie ein Boxplot erstellt wird.\n](https://r4ds.hadley.nz/images/EDA-boxplot.png){#fig-eda-boxplot fig-alt='Ein Diagramm, das zeigt, wie ein Boxplot nach den oben beschriebenen\nSchritten erstellt wird.'}\n:::\n:::\n\n\n\n::: footer\nBild entnommen aus: \n:::\n\n::: notes\n- Die Box ist ein Feld, das den Bereich der mittleren Hälfte der Daten angibt, eine Distanz, die als Interquartilbereich (IQR) bekannt ist und sich vom 25. Perzentil der Verteilung bis zum 75. Perzentil erstreckt.\n\n- In der Mitte der Box befindet sich eine Linie, die den Median, d. h. das 50. Perzentil, der Verteilung anzeigt.\n\n- Diese drei Linien vermitteln einen Eindruck von der Streuung der Verteilung und davon, ob die Verteilung symmetrisch um den Median oder zu einer Seite hin verzerrt ist.\n\n- Visuelle Punkte, die Beobachtungen anzeigen, die mehr als das 1,5-Fache des IQR von einem der Ränder des Kastens entfernt liegen. Diese Ausreißer sind ungewöhnlich und werden daher einzeln dargestellt.\n\n- Eine Linie (oder ein Whisker), die sich von jedem Ende des Kastens bis zum am weitesten entfernten Punkt in der Verteilung erstreckt, der kein Ausreißer ist.\n:::\n\n## Wir sind dran: md-02-uebungen\n\n::: task\n1. Öffne [posit.cloud](https://posit.cloud) in deinem Browser (verwende dein Lesezeichen).\n2. Öffne den rstatszh-k009 Arbeitsbereich (Workspace) für den Kurs.\n3. Klicke auf [Start]{.highlight-yellow} neben [md-02-uebungen]{.highlight-yellow}.\n4. Suche im Dateimanager im Fenster unten rechts die Datei [md-02b-daten-visualisierung.qmd]{.highlight-yellow} und klicke darauf, um sie im Fenster oben links zu öffnen.\n:::\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n\n```\n\n:::\n:::\n\n\n\n## Pause machen\n\n[Bitte steh auf und beweg dich.]{.highlight-yellow} Lasst eure E-Mails in Frieden ruhen.\n\n![](img/md-02/emails-rest-in-peace.png){width=\"50%\"}\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n\n```\n\n:::\n:::\n\n\n\n::: footer\nBild erzeugt mit [DALL-E 3 by OpenAI](https://openai.com/blog/dall-e/)\n:::\n\n# Daten visualisieren {background-color=\"#4C326A\"}\n\n## Arten von Variablen\n\n::: incremental\n::: columns\n::: {.column width=\"50%\"}\n### Numerisch\n\n**Diskrete Variablen**\n\n- nicht negative\n- zählbare\n- ganze Zahlen\n- z.B. Anzahl Schüler, Würfelwurf\n\n**Stetige (kontinuierliche) Variablen**\n\n- unendliche Anzahl von Werten\n- zwischen zwei Werten\n- auch Datums/Uhrzeitwerte\n- z.B. Länge, Gewicht, Grösse\n:::\n\n::: {.column width=\"50%\"}\n### Nicht numerisch\n\n**Kategoriale Variablen**\n\n- endliche Anzahl von Werten\n- eindeutige Gruppen (z.B. EU Länder)\n- **ordinal**, wenn diese eine logische Reihenfolge/Rangordnung aufweisen (z.B. Wochentage, Schulnoten)\n:::\n:::\n:::\n\n## Histogramm\n\n- zur Visualisierung der Verteilung von kontinuierlichen (numerischen) Variablen\n\n\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"|3\"}\nggplot(data = penguins,\n mapping = aes(x = body_mass_g)) +\n geom_histogram()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/histogram-penguins-1.png){width=576}\n:::\n:::\n\n\n\n## Barplot (Säulendiagramm)\n\n- zur Visualisierung der Verteilung von kategorischen (nicht numerischen) Variablen\n\n\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"|3\"}\nggplot(data = penguins,\n mapping = aes(x = species)) +\n geom_bar()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/barplot-penguins-1.png){width=576}\n:::\n:::\n\n\n\n## Scatterplot (Streudiagramm) {.smallest}\n\n- for visualizing relationships between two continuous (numerical) variables\n\n\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"|6\"}\nggplot(data = gapminder_2007,\n mapping = aes(x = gdpPercap,\n y = lifeExp,\n size = pop,\n color = continent)) +\n geom_point() +\n scale_color_colorblind() +\n theme_minimal()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/scatterplot-gdp-lifeExp-1.png){width=576}\n:::\n:::\n\n\n\n# Zusatzaufgaben Modul 2 {background-color=\"#4C326A\"}\n\n## Modul 2 Dokumentation\n\n::: learn-more\n[rstatszh-k009.github.io/website/module/md-02.html](https://rstatszh-k009.github.io/website/module/md-02.html)\n\n\n\n```{=html}\n\n```\n\n\n:::\n\n## Zusatzaufgaben Abgabedatum\n\n- Abgabedatum: [Montag, 07. Oktober]{.highlight-yellow}\n- Korrektur- und Feedbackphase bis zu: Donnerstag, 10. Oktober\n\n# Danke {background-color=\"#4C326A\"}\n\n## Danke! 🌻\n\nFolien erstellt mit revealjs und Quarto: https://quarto.org/docs/presentations/revealjs/ Access slides als [PDF auf GitHub](https://github.com/rstatszh-k009/website/raw/main/folien/md-02-datenvisualisierung.pdf)\n\nAlle Materialien sind lizenziert unter [Creative Commons Attribution Share Alike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/).\n",
+ "markdown": "---\ntitle: \"{{< var md-02.titel >}}\"\nsubtitle: \"{{< var course.long-titel >}}\"\nauthor: \"Lars Schöbitz\"\ndate: \"2024-10-01\"\ndate-format: \"MMM D, YYYY\"\nformat: \n revealjs: \n theme: slides.scss\n transition: fade\n slide-number: true\n chalkboard: true\nfooter: \"[{{< fa link >}} {{< var course.site-short >}}]({{< var course.site >}})\"\neditor: source\nexecute:\n freeze: auto\nparams:\n modul: 2\neditor_options: \n chunk_output_type: console\n---\n\n\n\n::: {.cell}\n\n:::\n\n\n\n\n## {background-image=\"img/md-02/r_rollercoaster.png\" background-size=\"contain\"} \n\n::: {.aside}\nArtwork by [@allison_horst](https://twitter.com/allison_horst) \n:::\n\n# Lösung von Coding Problemen {background-color=\"#4C326A\"}\n\n## Tipps für Suchmaschinen\n\n- Verwende Verben, die beschreiben, was du tun willst\n- Sei präzise \n- Füge R zur Suchanfrage hinzu \n- Füge den Namen des R-Pakets zur Suchanfrage hinzu (z.B ggplot2)\n- Scrolle durch die ersten 5 Ergebnisse (wähle nicht nur das erste aus)\n- Schreibe die Suchanfrage auf Englisch\n\n**Beispiel: \"How to remove a legend from a plot in R ggplot2\"**\n\n## Stack Overflow\n\n::: {.incremental}\n\n:::: {.columns}\n\n::: {.column width=\"47.5%\"}\n\n**Was ist das?**\n\n- Das größte Unterstützungsnetzwerk für (Coding-)Probleme\n- Kann anfangs einschüchternd sein\n- Upvote-System\n\n:::\n\n::: {.column width=\"5%\"}\n\n:::\n\n::: {.column width=\"47.5%\"}\n\n**Arbeitsablauf**\n\n- Lies dir zuerst kurz die Frage durch, die gepostet wurde.\n- Lies dir dann die Antwort durch, die als \"richtig\" markiert wurde.\n- Lies dir dann eine oder zwei weitere Antworten mit vielen Zustimmungen durch.\n- Sieh dir dann die \"linked posts\" an.\n\n:::\n\n::::\n\n:::\n\n## Tipps for AI tools \n\n- Verwende Verben, die beschreiben, was du tun willst\n- Sei präzise \n- Füge R zur Suchanfrage hinzu \n- Füge den Namen des R-Pakets zur Suchanfrage hinzu (z.B ggplot2)\n- Schreibe die Suchanfrage auf Englisch\n\n**Beispiel: \"How to remove a legend from a plot in R ggplot2\"**\n\n## Andere Quellen für Hilfe\n\n:::: {.columns}\n\n::: {.column width=\"50%\"}\n\n- Posit Community Forum: \n- Dokumentation Webseiten: \n- Mastodon tag: [#rstats](https://fosstodon.org/tags/rstats)\n- Quarto GitHub Diskussion: \n:::\n\n::: {.column width=\"50%\"}\n\n![](img/md-02/dalle3-image-colorful-coding.png)\n\n::: \n::::\n\n::: footer\nImage generated with [DALL-E 3 by OpenAI](https://openai.com/blog/dall-e/)\n:::\n\n## {background-image=\"img/md-02/code_hero.jpg\" background-size=\"contain\"} \n\n::: footer\nArtwork by [@allison_horst](https://www.allisonhorst.com/)\n:::\n\n# Interaktion mit GitHub {background-color=\"#4C326A\"}\n\n## öffne die GitHub Organisation\n\n[Füge diesen Link als Lesezeichen in deinem Browser hinzu!]{.highlight-yellow}\n\n::: learn-more\n[github.com/rstatszh-k009](https://github.com/rstatszh-k009)\n\n![](TODO)\n:::\n\n## innerhalb der GitHub Organisation\n\n- Suche in der Suchleiste nach deinem Benutzernamen unter [Repositories]{.highlight-yellow}\n\n![](TODO)\n\n## innerhalb deines Repositories\n\n![](TODO)\n\n## innerhalb Posit Cloud\n\n[Füge diesen Link als Lesezeichen in deinem Browser hinzu!]{.highlight-yellow}\n\n::: learn-more\n[https://posit.cloud/spaces/543494/content/](https://posit.cloud/spaces/543494/content/)\n\n![](TODO)\n:::\n\n## innerhalb Posit Cloud\n\n::: learn-more\n![](TODO)\n:::\n\n# Versionskontrolle - Terminologie {background-color=\"#4C326A\"}\n\n## Versionskontrolle - Terminologie\n\nTODO: Diagramm als Übersicht für Git Terminologie\n\n## Lernziele (für diese Woche)\n\n\n\n::: {.cell}\n\n:::\n\n::: {.cell}\n1. Die Lernenden können beschreiben wie Variablen eines Datensatzes mittels des R-Package ggplot2 den visuellen Eigenschaften eines Diagramms zugeordnet werden (EN: aesthetic mapping).\n2. Die Lernenden können die Skalierungen (Farbe, Achsen) eines Diagramms kontrollieren.\n3. Die Lernenden können drei verschiedene Diagrammtypen (Balkendiagramm, Histogramm, Punkt) und ihre Anwendungsfälle vergleichen.\n4. Die Lernenden können den DAP navigieren um relevante Software selbst auf ihren Arbeitsgeräten zu installieren. Sie können sich das R-Bundle aus dem Serviceportal bestellen und wissen wie sie Probleme melden.\n5. Die Lernenden...\n:::\n\n\n\n# Digitaler Arbeitsplatz / R Community\n\n- TODO\n\n## Triff das STAT\n\n## Triff die Kursleitung {.smaller}\n\n::: columns\n::: {.column width=\"50%\"}\n\n**Philipp Bosch**\n\n![](img/md-01/profil-philipp.png){fig-alt=\"\" fig-align=\"left\" width=50%}\n\n- Punkt 1 \n- Punkt 2\n- Punkt 3\n\n:::\n::: {.column width=\"50%\"}\n\n**Thomas Knecht**\n\n![](img/md-01/profil-thomas.png){fig-alt=\"\" fig-align=\"left\" width=50%}\n\n- Punkt 1 \n- Punkt 2\n- Punkt 3\n\n\n:::\n:::\n\n## DAP\n\n- Punkt 1\n\n## Pause machen\n\n[Bitte steh auf und beweg dich.]{.highlight-yellow} Lasst eure E-Mails in Frieden ruhen.\n\n![](img/md-02/emails-rest-in-peace.png){width=\"50%\"}\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n\n```\n\n:::\n:::\n\n\n\n::: footer\nBild erzeugt mit [DALL-E 3 by OpenAI](https://openai.com/blog/dall-e/)\n:::\n\n# Explorative Datenanalyse mit `ggplot2` {background-color=\"#4C326A\"}\n\n## R Paket `ggplot2`\n\n:::: {.columns}\n\n::: {.column width=\"50%\"}\n\n- **ggplot2** ist das Datenvisualisierungspaket von tidyverse\n- gg\" in \"ggplot2\" steht für \"Grammar of Graphics\"\n- Inspiriert durch das Buch **Grammar of Graphics** von Leland Wilkinson\n- **Dokumentation:** https://ggplot2.tidyverse.org/\n- **Buch**: https://ggplot2-book.org\n\n:::\n\n::: {.column width=\"50%\"}\n\n![](img/md-02/ggplot2-part-of-tidyverse.png)\n\n\n\n::: {.cell}\n\n:::\n\n\n\n:::\n\n::::\n\n\n## Ich bin dran: Arbeiten mit R\n\n
\n\n::: {.hand-purple-large style=\"text-align: center;\"}\nZurücklehnen und genießen!\n:::\n\n## Code Struktur\n\n- `ggplot()` ist die Hauptfunktion von ggplot2\n- Plots werden in Schichten aufgebaut\n- Die Struktur des Codes für Plots lässt sich wie folgt zusammenfassen\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = [datensatz], \n mapping = aes(x = [x-variable], \n y = [y-variable])) +\n geom_xxx() +\n andere Optionen \n```\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-8-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder)\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-9-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes()) \n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-10-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes(x = continent,\n y = lifeExp)) \n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-11-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes(x = continent,\n y = lifeExp)) +\n geom_boxplot() \n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-12-1.png){width=672}\n:::\n:::\n\n\n\n## Code Struktur {auto-animate=\"true\"}\n\n\n\n::: {.cell}\n\n```{.r .cell-code}\nggplot(data = gapminder,\n mapping = aes(x = continent,\n y = lifeExp)) +\n geom_boxplot() +\n theme_minimal()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-13-1.png){width=672}\n:::\n:::\n\n\n\n# Polls {background-color=\"#4C326A\"}\n\n## Poll 1: Was stellt die dicke Linie innerhalb des Kastens eines Boxplots dar?{.smaller}\n\n::: columns\n::: {.column width=\"30%\"}\n\n1. Ich weiß es nicht\n2. der Mittelwert der Beobachtungen\n3. die Mitte der Box\n4. der Median der Beobachtungen\n\n:::\n\n::: {.column width=\"70%\"}\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-14-1.png){width=672}\n:::\n:::\n\n\n\n:::\n:::\n\n## Poll 2: Wie viel Prozent der Beobachtungen befinden sich innerhalb der Box eines Boxplots (Interquartilsbereich)? {.smaller}\n\n::: columns\n::: {.column width=\"30%\"}\n\n1. Ich weiß es nicht\n2. 25%\n3. hängt vom Median ab\n4. 50%\n\n:::\n\n::: {.column width=\"70%\"}\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/unnamed-chunk-15-1.png){width=672}\n:::\n:::\n\n\n\n:::\n:::\n\n## Poll 3: Was ist der Median einer Gruppe von Beobachtungen? {.smaller}\n\n1. Ich weiß es nicht\n2. Der Median ist der am häufigsten vorkommende Wert in einem Datensatz.\n3. Der Median ist die Summe aller Werte in einem Datensatz geteilt durch die Anzahl der Beobachtungen.\n4. Der Median ist der Punkt, über und unter dem die Hälfte (50%) der Beobachtungen liegt.\n\n## Boxplot, erklärt\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n![Diagramm, das zeigt, wie ein Boxplot erstellt wird.\n](https://r4ds.hadley.nz/images/EDA-boxplot.png){#fig-eda-boxplot fig-alt='Ein Diagramm, das zeigt, wie ein Boxplot nach den oben beschriebenen\nSchritten erstellt wird.'}\n:::\n:::\n\n\n\n::: footer\nBild entnommen aus: \n:::\n\n::: notes\n\n- Die Box ist ein Feld, das den Bereich der mittleren Hälfte der Daten angibt, eine Distanz, die als Interquartilbereich (IQR) bekannt ist und sich vom 25. Perzentil der Verteilung bis zum 75. Perzentil erstreckt. \n\n- In der Mitte der Box befindet sich eine Linie, die den Median, d. h. das 50. Perzentil, der Verteilung anzeigt.\n\n- Diese drei Linien vermitteln einen Eindruck von der Streuung der Verteilung und davon, ob die Verteilung symmetrisch um den Median oder zu einer Seite hin verzerrt ist.\n\n- Visuelle Punkte, die Beobachtungen anzeigen, die mehr als das 1,5-Fache des IQR von einem der Ränder des Kastens entfernt liegen. Diese Ausreißer sind ungewöhnlich und werden daher einzeln dargestellt.\n\n- Eine Linie (oder ein Whisker), die sich von jedem Ende des Kastens bis zum am weitesten entfernten Punkt in der Verteilung erstreckt, der kein Ausreißer ist.\n:::\n\n## Wir sind dran: md-02-uebungen\n\n::: task\n1. Öffne [posit.cloud](https://posit.cloud) in deinem Browser (verwende dein Lesezeichen).\n2. Öffne den rstatszh-k009 Arbeitsbereich (Workspace) für den Kurs.\n3. Klicke auf [Start]{.highlight-yellow} neben [md-02-uebungen]{.highlight-yellow}.\n4. Suche im Dateimanager im Fenster unten rechts die Datei [`TODO: md-02b-datenvisualisierung.qmd`]{.highlight-yellow} und klicke darauf, um sie im Fenster oben links zu öffnen.\n:::\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n\n```\n\n:::\n:::\n\n\n\n## Pause machen\n\n[Bitte steh auf und beweg dich.]{.highlight-yellow} Lasst eure E-Mails in Frieden ruhen.\n\n![](img/md-02/emails-rest-in-peace.png){width=\"50%\"}\n\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n\n```\n\n:::\n:::\n\n\n\n::: footer\nBild erzeugt mit [DALL-E 3 by OpenAI](https://openai.com/blog/dall-e/)\n:::\n\n# Daten visualisieren {background-color=\"#4C326A\"}\n\n## Arten von Variablen \n\n::: {.incremental}\n\n:::: {.columns}\n\n::: {.column width=\"50%\"}\n\n### Numerisch\n\n**Diskrete Variablen**\n\n- nicht negative\n- zählbare\n- ganze Zahlen\n- z.B. Anzahl Schüler, Würfelwurf\n\n**Stetige (kontinuierliche) Variablen**\n\n- unendliche Anzahl von Werten \n- zwischen zwei Werten\n- auch Datums/Uhrzeitwerte\n- z.B. Länge, Gewicht, Grösse \n\n:::\n\n::: {.column width=\"50%\"}\n\n### Nicht numerisch\n\n**Kategoriale Variablen**\n\n- endliche Anzahl von Werten \n- eindeutige Gruppen (z.B. EU Länder)\n- **ordinal**, wenn diese eine logische Reihenfolge/Rangordnung aufweisen (z.B. Wochentage, Schulnoten)\n\n:::\n\n::::\n\n:::\n\n## Histogramm\n\n- zur Visualisierung der Verteilung von kontinuierlichen (numerischen) Variablen\n\n\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"|3\"}\nggplot(data = penguins,\n mapping = aes(x = body_mass_g)) +\n geom_histogram()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/histogram-penguins-1.png){width=576}\n:::\n:::\n\n\n\n## Barplot (Säulendiagramm)\n\n- zur Visualisierung der Verteilung von kategorischen (nicht numerischen) Variablen\n\n\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"|3\"}\nggplot(data = penguins,\n mapping = aes(x = species)) +\n geom_bar()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/barplot-penguins-1.png){width=576}\n:::\n:::\n\n\n\n## Scatterplot (Streudiagramm) {.smallest}\n\n- for visualizing relationships between two continuous (numerical) variables\n\n\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"|6\"}\nggplot(data = gapminder_2007,\n mapping = aes(x = gdpPercap,\n y = lifeExp,\n size = pop,\n color = continent)) +\n geom_point() +\n scale_color_colorblind() +\n theme_minimal()\n```\n\n::: {.cell-output-display}\n![](md-02-datenvisualisierung_files/figure-revealjs/scatterplot-gdp-lifeExp-1.png){width=576}\n:::\n:::\n\n\n\n## Du bist dran: md-02-exercises\n\n::: task\n1. Öffne [posit.cloud](https://posit.cloud) in deinem Browser (verwende dein Lesezeichen).\n2. Öffne den rstatszh-k009 Arbeitsbereich (Workspace) für den Kurs.\n3. Klicke auf [Continue]{.highlight-yellow} neben [md-02-uebungen]{.highlight-yellow}.\n4. Suche im Dateimanager im Fenster unten rechts die Datei [`TODO: md-02c-diagramm.qmd`]{.highlight-yellow} und klicke darauf, um sie im Fenster oben links zu öffnen.\n:::\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n\n```\n\n:::\n:::\n\n\n\n# Zusatzaufgaben Modul 2 {background-color=\"#4C326A\"}\n\n## Modul 2 Dokumentation\n\n::: learn-more\n[rstatszh-k009.github.io/website/module/md-02.html](https://rstatszh-k009.github.io/website/module/md-02.html)\n\n\n\n```{=html}\n\n```\n\n\n:::\n\n## Zusatzaufgaben Abgabedatum\n\n- Abgabedatum: [Montag, 07. Oktober]{.highlight-yellow}\n- Korrektur- und Feedbackphase bis zu: Donnerstag, 10. Oktober \n\n# Danke {background-color=\"#4C326A\"}\n\n## Danke! 🌻 \n\nFolien erstellt mit revealjs und Quarto: https://quarto.org/docs/presentations/revealjs/ Access slides als [PDF auf GitHub](https://github.com/rstatszh-k009/website/raw/main/folien/md-02-datenvisualisierung.pdf)\n\nAlle Materialien sind lizenziert unter [Creative Commons Attribution Share Alike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/).",
"supporting": [
"md-02-datenvisualisierung_files"
],
diff --git a/docs/folien/md-02-datenvisualisierung.html b/docs/folien/md-02-datenvisualisierung.html
index 3c9a6b0..fddd600 100644
--- a/docs/folien/md-02-datenvisualisierung.html
+++ b/docs/folien/md-02-datenvisualisierung.html
@@ -414,7 +414,7 @@ Explorative Datenanalyse durch Visualisierung & Digitaler
@@ -431,7 +431,7 @@ Tipps für Suchmaschinen
Scrolle durch die ersten 5 Ergebnisse (wähle nicht nur das erste aus)
Schreibe die Suchanfrage auf Englisch
-Beispiel: How to remove a legend from a plot in R ggplot2?
+Beispiel: “How to remove a legend from a plot in R ggplot2”
Stack Overflow
@@ -457,19 +457,16 @@ Stack Overflow
-
-Tipps für AI Werkzeuge
+
Andere Quellen für Hilfe
@@ -479,6 +476,7 @@ Andere Quellen für Hilfe
Posit Community Forum: https://community.rstudio.com/
Dokumentation Webseiten: https://ggplot2.tidyverse.org/
Mastodon tag: #rstats
+Quarto GitHub Diskussion: https://github.com/quarto-dev/quarto-cli/discussions
@@ -490,9 +488,56 @@
Andere Quellen für Hilfe
+
+
+Interaktion mit GitHub
+
+
+
+öffne die GitHub Organisation
+Füge diesen Link als Lesezeichen in deinem Browser hinzu!
+
+
+
+innerhalb der GitHub Organisation
+
+- Suche in der Suchleiste nach deinem Benutzernamen unter Repositories
+
+
+
+
+innerhalb deines Repositories
+
+
+
+innerhalb Posit Cloud
+Füge diesen Link als Lesezeichen in deinem Browser hinzu!
+
+
+innerhalb Posit Cloud
+
+
+
+
+
+
+Versionskontrolle - Terminologie
+
+
+
+Versionskontrolle - Terminologie
+TODO: Diagramm als Übersicht für Git Terminologie
+
Lernziele (für diese Woche)
@@ -501,99 +546,54 @@
Lernziele (für diese Woche)
Die Lernenden können die Skalierungen (Farbe, Achsen) eines Diagramms kontrollieren.
Die Lernenden können drei verschiedene Diagrammtypen (Balkendiagramm, Histogramm, Punkt) und ihre Anwendungsfälle vergleichen.
Die Lernenden können den DAP navigieren um relevante Software selbst auf ihren Arbeitsgeräten zu installieren. Sie können sich das R-Bundle aus dem Serviceportal bestellen und wissen wie sie Probleme melden.
+Die Lernenden…