BaşlayınÜcretsiz Başlayın

Bir select input ekle

Bir shiny uygulamasına input eklemek iki adımlı bir işlemdir: önce UI tarafına bir ___Input("x") fonksiyonu eklersin, sonra sunucuda değerine input$x ile erişirsin.

Örneğin, kullanıcıların bir listeden hayvan seçmesini istersen, selectInput kullanabilir ve seçilen değere input$animal olarak başvurabilirsin:

selectInput(
  'animal', 
  'Select Animal', 
  selected = 'Cat', 
  choices = c('Dog', 'Cat')
)

Bu egzersizde, kullanıcıların cinsiyete göre en popüler ilk 10 ismi görselleştirmesine olanak tanıyan bir Shiny uygulaması oluşturacaksın; bunun için kullanıcıların cinsiyet seçebilmesini sağlayan bir input ekleyeceksin.

Bu egzersiz

R ile Shiny Kullanarak Web Uygulamaları Geliştirme

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Kullanıcıların "M" ve "F" arasında seçim yapabilmesi için adı "sex" olan bir select input ekle; varsayılan değer "F" olsun.
  • Sunucu kodunu, yalnızca "F" yerine seçilen cinsiyet için ilk 10 ismi alacak şekilde güncelle.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

ui <- fluidPage(
  titlePanel("What's in a Name?"),
  # CODE BELOW: Add select input named "sex" to choose between "M" and "F"

  # Add plot output to display top 10 most popular names
  plotOutput('plot_top_10_names')
)

server <- function(input, output, session){
  # Render plot of top 10 most popular names
  output$plot_top_10_names <- renderPlot({
    # Get top 10 names by sex and year
    top_10_names <- babynames %>% 
      # MODIFY CODE BELOW: Filter for the selected sex
      filter(sex == "F") %>% 
      filter(year == 1900) %>% 
      slice_max(prop, n = 10)
    # Plot top 10 names by sex and year
    ggplot(top_10_names, aes(x = name, y = prop)) +
      geom_col(fill = "#263e63")
  })
}

shinyApp(ui = ui, server = server)
Kodu Düzenle ve Çalıştır