Fler sätt att visa data: diagram och nedladdning

Fallstudier: Bygg webbapplikationer med Shiny i R

Dean Attali

Shiny Consultant

Diagramdata

  • Diagram är ett vanligt första steg vid utforskning av en ny datamängd

    • Diagram är utdata
    • Platshållarfunktion för diagram i gränssnittet:
    plotOutput("my_plot")
    
    • Renderingsfunktion för diagram på servern:
  output$my_plot <- renderPlot({
      # code for a plot
  })
Fallstudier: Bygg webbapplikationer med Shiny i R

Ladda ner data

  • Nedladdning stöds via en nedladdningsknapp

    chapter3_2_more_ways_to_view_data_plot_and_download.009.png

    • Kan skapa alla typer av filer för nedladdning
    • bildfiler, textfiler, CSV-filer
Fallstudier: Bygg webbapplikationer med Shiny i R

CSV-filer

  • Kommaseparerade värden

  • Lagrar små till medelstora datamängder

  • CSV av gapminder:

    country,continent,year,lifeExp,pop,gdpPercap  
    Afghanistan,Asia,1952,28.801,8425333,779.4453145  
    Afghanistan,Asia,1957,30.332,9240934,820.8530296  
    Afghanistan,Asia,1962,31.997,10267083,853.10071  
    Afghanistan,Asia,1967,34.02,11537966,836.1971382
    
  • Skapa en CSV-fil:

write.csv(gapminder, "myfile.csv")
Fallstudier: Bygg webbapplikationer med Shiny i R

Ladda ner data i Shiny

  • Nedladdningsknappen behandlas som utdata

    • Lägg till nedladdningsknapp i gränssnittet: (liknar utdatafunktioner)
    downloadButton(outputId = "download_data", 
                   label = "Download data")
    
    • Lägg till nedladdningshanterare på servern: (liknar renderingsfunktioner)
    output$download_data <- downloadHandler(
        filename = "data.csv",
        content = function(file) {
            # Code that creates a file in the path <file>
            write.csv(gapminder, file)
        }
    )
    
Fallstudier: Bygg webbapplikationer med Shiny i R

Nedladdningshanterare

  output$download_data <- downloadHandler(
      filename = "data.csv",
      content = function(file) {
          # code that creates a file in the path <file>
          write.csv(gapminder, file)
      }
  )
  • downloadHandler() har två argument
    • filename
      • Namnet på den nedladdade filen
    • content(file)
      • Funktion med 1 argument
      • Skapar filen som ska laddas ner; argumentet är filsökvägen
Fallstudier: Bygg webbapplikationer med Shiny i R

Nu kör vi en övning!

Fallstudier: Bygg webbapplikationer med Shiny i R

Preparing Video For Download...