Aan de slagGa gratis aan de slag

Zet lengte om van inches naar centimeters

Eerder in dit hoofdstuk oefenden we met het stoppen, vertragen en triggeren van apps. Dit is een veelvoorkomend patroon in Shiny waarmee je apps kunt optimaliseren voor snelheid (en alleen opnieuw worden uitgevoerd wanneer er iets is bijgewerkt én je gebruiker de app opnieuw wil uitvoeren.)

In deze oefening ga je een paar van die concepten opnieuw toepassen, zodat je ze echt goed begrijpt. In plaats van de BMI te berekenen, zet deze app lengte in inches om naar centimeters.

Deze oefening maakt deel uit van de cursus

Webapplicaties bouwen met Shiny in R

Cursus bekijken

Oefeninstructies

  • Server: Stel het uitvoeren van de berekening van de lengte in cm uit totdat de gebruiker op de knop 'Show height in cm' klikt.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

ui <- fluidPage(
  titlePanel("Inches to Centimeters Conversion"),
  sidebarLayout(
    sidebarPanel(
      numericInput("height", "Height (in)", 60),
      actionButton("show_height_cm", "Show height in cm")
    ),
    mainPanel(
      textOutput("height_cm")
    )
  )
)

server <- function(input, output, session) {
  # MODIFY CODE BELOW: Delay the height calculation until
  # the show button is pressed
  rval_height_cm <- reactive({
    input$height * 2.54
  })
  
  output$height_cm <- renderText({
    height_cm <- rval_height_cm()
    	paste("Your height in centimeters is", height_cm, "cm")
    })
}

shinyApp(ui = ui, server = server)
Code bewerken en uitvoeren