LoslegenKostenlos loslegen

App 2: Beliebte Babynamen

Eine Shiny-App zu bauen, ist ein modularer Prozess. Du beginnst mit dem UI und arbeitest dann am Server-Code weiter, indem du Ausgaben auf Basis der Benutzereingaben erstellst. Je bewusster du diesen Ansatz übst, desto leichter fällt es dir, gute Apps zu bauen.

Du baust jetzt eine Shiny-App, in der ein:e Nutzer:in Geschlecht und Jahr wählen kann. Anschließend werden die 10 beliebtesten Namen dieses Jahres als Säulendiagramm der Geburtenanteile (prop) nach Name (name) angezeigt. Deine finale App sollte dem unten gezeigten Screenshot ähneln.

An app where the name selector and year slider appear in the left sidebar, while the graph appears on the right in the main panel

Wir haben eine Funktion get_top_names() bereitgestellt, die die Top 10 der Namen für ein bestimmtes year und sex ermittelt. Zum Beispiel erhältst du die Top 10 der männlichen Namen für das Jahr 2000 mit get_top_names(2000, "M").

Außerdem ist das Paket ggplot2 geladen. Du kannst aus einem Data Frame d mit den Spalten x und y ein Säulendiagramm erstellen mit:

ggplot(d, aes(x = x, y = y)) +
  geom_col()

Diese Übung ist Teil des Kurses

Webanwendungen mit Shiny in R entwickeln

Kurs anzeigen

Anleitung zur Übung

  • Füge oben in deiner App einen Titel hinzu und verwende ein Sidebar-Layout.
  • Füge in der Sidebar eine Eingabe hinzu, mit der das Geschlecht (M oder F) gewählt werden kann.
  • Füge in der Sidebar einen Schieberegler hinzu, um ein Jahr auszuwählen (1880 bis 2017).
  • Füge im Main Panel eine Plot-Ausgabe hinzu.
  • Füge im Server eine Ausgabe hinzu, die auf Basis von year und sex ein Säulendiagramm rendert. Beachte, dass du innerhalb der geschweiften Klammern einer Rendering-Funktion mehrere Codezeilen hinzufügen kannst: render***({___}).

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

ui <- fluidPage(
  
)

server <- function(input, output, session) {
  
}

shinyApp(ui = ui, server = server)
Code bearbeiten und ausführen