Więcej sposobów wyświetlania danych: wykresy i pobieranie

Studia przypadków: tworzenie aplikacji webowych w Shiny w R

Dean Attali

Shiny Consultant

Wizualizacja danych

  • Wykresy to częsty pierwszy krok w eksploracji nowego zbioru danych

    • Wykresy są wyjściami
    • Funkcja zastępcza wyjścia wykresu w UI:
    plotOutput("my_plot")
    
    • Funkcja renderowania wykresu na serwerze:
  output$my_plot <- renderPlot({
      # code for a plot
  })
Studia przypadków: tworzenie aplikacji webowych w Shiny w R

Pobieranie danych

  • Pobieranie jest obsługiwane za pomocą przycisku pobierania

    chapter3_2_more_ways_to_view_data_plot_and_download.009.png

    • Można tworzyć dowolny typ pliku do pobrania
    • pliki graficzne, tekstowe, CSV
Studia przypadków: tworzenie aplikacji webowych w Shiny w R

Pliki CSV

  • Wartości Rozdzielone Przecinkami

  • Przechowywanie małych i średnich zbiorów danych

  • CSV dla 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
    
  • Tworzenie pliku CSV:

write.csv(gapminder, "myfile.csv")
Studia przypadków: tworzenie aplikacji webowych w Shiny w R

Pobieranie danych w Shiny

  • Przycisk pobierania jest traktowany jako wyjście

    • Dodanie przycisku pobierania do UI: (podobnie jak funkcje wyjść)
    downloadButton(outputId = "download_data", 
                   label = "Download data")
    
    • Dodanie handlera pobierania na serwerze: (podobnie jak funkcje renderowania)
    output$download_data <- downloadHandler(
        filename = "data.csv",
        content = function(file) {
            # Code that creates a file in the path <file>
            write.csv(gapminder, file)
        }
    )
    
Studia przypadków: tworzenie aplikacji webowych w Shiny w R

Handler pobierania

  output$download_data <- downloadHandler(
      filename = "data.csv",
      content = function(file) {
          # code that creates a file in the path <file>
          write.csv(gapminder, file)
      }
  )
  • downloadHandler() przyjmuje dwa argumenty
    • filename
      • Nazwa pobieranego pliku
    • content(file)
      • Funkcja z 1 argumentem
      • Tworzy plik do pobrania; argument to ścieżka pliku
Studia przypadków: tworzenie aplikacji webowych w Shiny w R

Czas na ćwiczenia!

Studia przypadków: tworzenie aplikacji webowych w Shiny w R

Preparing Video For Download...