Introduktion till Shiny

Bygg webbapplikationer med Shiny i R

Ramnath Vaidyanathan

VP of Product Research

Introduktion till Shiny

Shiny-webbapp som visar väntetider för geysern Old Faithful, med interaktivt justerbart antal histogram-staplar

Bygg webbapplikationer med Shiny i R

Vad är en webbapp?

  • Uppdateras baserat på användarens inmatning/interaktion
  • Består av UI och server
Bygg webbapplikationer med Shiny i R

Vad är en webbapp?

GIF av NY Times webbapp "Paths to the White House"

  • Visar möjliga vägar till Vita huset för olika presidentkandidater.
Bygg webbapplikationer med Shiny i R

Vad är en webbapp?

  • DataCamp-mobilappen

GIF av DataCamp-mobilappen som visar ett exempel på en övningsfråga.

Bygg webbapplikationer med Shiny i R

Hur fungerar en webbapp?

En webbapp uppdateras baserat på användarens inmatning/interaktion Diagram som visar hur klienter och servrar är kopplade för att driva webbappar på internet

Bygg webbapplikationer med Shiny i R

Vad är Shiny?

Diagram över Shiny som visar hur serverkod och UI-gränssnitt är separata men samverkar för att skapa en app

Bygg webbapplikationer med Shiny i R

Varför bör datavetare bygga webbappar?

Iris-datamängden grupperad efter sepal.length och sepal.width, med 3 distinkta kluster

Bygg webbapplikationer med Shiny i R

Varför bör datavetare bygga webbappar?

plot_kmeans(
  data = iris, 
  x = 'Sepal.Length', 
  y = 'Sepal.Width', 
  nb_clusters = 3
)

Iris-datamängden grupperad efter sepal.length och sepal.width, med 3 distinkta kluster

Bygg webbapplikationer med Shiny i R

Varför bör datavetare bygga webbappar?

library(shiny)
ui <- fluidPage(
  h1('K-Means Clustering App'),
  selectInput('x', 'Select x', names(iris), 'Sepal.Length'),
  selectInput('y', 'Select y', names(iris), 'Sepal.Width'),
  numericInput('nb_clusters', 'Select number of clusters', 3),
  plotly::plotlyOutput('kmeans_plot')
)

server <- function(input, output, session){
  output$kmeans_plot <- plotly::renderPlotly({
    plot_kmeans(iris, input$x, input$y, input$nb_clusters)
  })
}

shinyApp(ui = ui, server = server)
Bygg webbapplikationer med Shiny i R

Varför bör datavetare bygga webbappar?

Webbapp som utför k-means-klustring av Iris-datamängden

Bygg webbapplikationer med Shiny i R

Nu kör vi en övning!

Bygg webbapplikationer med Shiny i R

Preparing Video For Download...