Komponenty shinydashboard

Tvorba dashboardů pomocí shinydashboard

Png Kee Seng

Researcher

Co je shinydashboard?

  • Shinydashboard je shinyApp s výstupem ve formě dashboardu
    • Vyžaduje UI
    • Vyžaduje server
  • shinyApp() propojuje UI a server
  • UI je definováno pomocí dashboardPage(), nikoli fluidPage()
ui <- dashboardPage(header, sidebar, body)
server <- function(input, output){
...
}
shinyApp(ui, server)
Tvorba dashboardů pomocí shinydashboard

Uživatelské rozhraní (UI)

  • UI nyní obsahuje více částí
    1. Záhlaví
    2. Postranní panel
    3. Tělo
  • UI shinydashboard se sestavuje pomocí dashboardPage()
header <- dashboardHeader(...)
sidebar <- dashboardSidebar(...)
body <- dashboardBody(...)
# a shinydashboard ui
ui <- dashboardPage(header, sidebar, body)
Tvorba dashboardů pomocí shinydashboard

Náhled UI

Přehled komponent UI shinydashboard.

Tvorba dashboardů pomocí shinydashboard

Analogie s restaurací

  • UI je jako restaurace
  • Server je jako číšník
  • UI lze dále rozdělit na menší komponenty

Uživatel shinyApp je jako host restaurace.

Číšník přenáší objednávku do kuchyně a přináší jídlo.

1 Image by macrovector on Freepik
Tvorba dashboardů pomocí shinydashboard

UI jako vícechodové menu

  • V UI:
    • Záhlaví je jako cedule restaurace
    • Postranní panel je jako seznam chodů
    • Výstupy a vstupy jsou jako jídla a objednávky
  • Vždy se zobrazuje jeden chod
  • Ke každému chodu jsou zobrazeny pokyny
  • Každý chod je jako shinyApp
    • Může obsahovat více vstupů a výstupů

Každý chod je jako shinyApp s několika vstupy a výstupy.

1 Image by brgfx on Freepik
Tvorba dashboardů pomocí shinydashboard

Prázdný shinydashboard

library(shinydashboard)
library(shiny)
header <- dashboardHeader(title = "My first dashboard")
sidebar <- dashboardSidebar()
body <- dashboardBody()
ui <- dashboardPage(header, sidebar, body)
Tvorba dashboardů pomocí shinydashboard

Vykreslení shinydashboard

header <- dashboardHeader(title = "My first dashboard")

sidebar <- dashboardSidebar()

body <- dashboardBody()

ui <- dashboardPage(header, sidebar, body)

server <- function(input, output) { }
shinyApp(ui, server)
Tvorba dashboardů pomocí shinydashboard

Vykreslení shinydashboard

Prázdný shinydashboard

Tvorba dashboardů pomocí shinydashboard

Pojďme si procvičit!

Tvorba dashboardů pomocí shinydashboard

Preparing Video For Download...