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

Reaktif bağlamlar

Reaktif değerler Shiny içinde özel yapılardır; R programlamanın başka hiçbir yerinde görülmez. Bu nedenle, reaktif değerler herhangi bir R kodunda kullanılamaz; yalnızca reaktif bir bağlam içinde erişilebilirler.

İşte bu yüzden, bir reaktif değere bağlı olan herhangi bir değişken mutlaka reactive() fonksiyonu kullanılarak oluşturulmalıdır; aksi halde hata alırsın. Shiny sunucusunun kendisi reaktif bir bağlam değildir, ancak reactive() fonksiyonu, observe() fonksiyonu ve tüm render*() fonksiyonları reaktiftir.

Bu egzersiz

Vaka Çalışmaları: R ile Shiny Kullanarak Web Uygulamaları Geliştirme

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

Egzersiz talimatları

Sana iki sayısal girdi (num1 ve num2) ve bir metin çıktısı içeren bir Shiny uygulaması verildi. Görevin:

  • my_sum adlı bir reaktif değişkende iki sayısal girdinin toplamını hesaplamak (satır 10).
  • my_average adlı bir reaktif değişkende iki girdinin ortalamasını hesaplamak (satır 14).
  • Metin çıktısında, hesaplanan ortalamayı reaktif değişkenleri kullanarak göstermek (satır 23).

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

ui <- fluidPage(
  numericInput("num1", "Number 1", 5),
  numericInput("num2", "Number 2", 10),
  textOutput("result")
)

server <- function(input, output) {
  # Calculate the sum of the inputs
  my_sum <- reactive({
    input$num1 + ___
  })

  # Calculate the average of the inputs
  my_average <- ___({
    my_sum() / 2
  })
  
  output$result <- renderText({
    paste(
      # Print the calculated sum
      "The sum is", my_sum(),
      # Print the calculated average
      "and the average is", ___
    )
  })
}

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