Indata och utdata

Fallstudier: Bygg webbapplikationer med Shiny i R

Dean Attali

Shiny Consultant

Indata

Fallstudier: Bygg webbapplikationer med Shiny i R

Indata

chapter1_2_inputs_and_outputs.005.png

Fallstudier: Bygg webbapplikationer med Shiny i R

Indata

chapter1_2_inputs_and_outputs.006.png

Fallstudier: Bygg webbapplikationer med Shiny i R

Bygga indata

ui <- fluidPage(
    textInput(inputId = "name", label = "Enter your name",
              value = "Dean"),
    numericInput(inputId = "sibs", label = "How many siblings?",
                 value = 4, min = 0)
)
  • Indatafunktioner: *Input(inputId, label, ...)
  • inputId = Unikt ID
  • label = Text som beskriver indata
  • ... = Ytterligare indataspecifika parametrar
Fallstudier: Bygg webbapplikationer med Shiny i R

Utdata

  • Diagram, tabeller, text – allt R skapar som användaren ser
  • Två steg:

    1. Skapa platshållare för utdata (i UI)

      ui <- fluidPage(
       "Plot goes here:",
       plotOutput(outputId = "my_plot")
      )
      
    2. Skriv R-kod för att generera utdata (i server)

Fallstudier: Bygg webbapplikationer med Shiny i R

Servern

server <- function(input, output) {

  # Code for building outputs

}
  • input
    • Läs värden härifrån (indata som användaren ändrar)
  • output
    • Skriv värden hit (utdata, t.ex. diagram och tabeller)
Fallstudier: Bygg webbapplikationer med Shiny i R

Bygga utdata

ui <- fluidPage(
    numericInput("num", "Number of rows", value = 10, min = 0),
    tableOutput("my_table")
)

server <- function(input, output) { output$my_table <- renderTable({ head(iris, n = input$num) }) }
  • 3 regler för att bygga ett utdataobjekt:
    1. Bygg objektet inuti en renderfunktion (renderPlot(), renderText(), osv.)
    2. Spara objektet till output$<outputId>
    3. Använd input$<inputId> för att läsa indatavärdet
Fallstudier: Bygg webbapplikationer med Shiny i R

Nu kör vi en övning!

Fallstudier: Bygg webbapplikationer med Shiny i R

Preparing Video For Download...