demo/shiny_TS/ui.R

ui = dashboardPagePlus(
  skin = "blue", 
  ###################################################
  #                    HEADER                       #
  ################################################### 
  header = dashboardHeaderPlus(
    title = "TS", 
    disable = FALSE, 
    enable_rightsidebar = TRUE,
    rightSidebarIcon = "gear"
    ),
  ###################################################
  #                 RIGHT SIDEBAR                   #
  ################################################### 
  rightsidebar = rightSidebar(
    prettySwitch(inputId = "test", label = "Démo", fill = TRUE,value = TRUE, status = "primary"),
    fileInput("csvFile", "Drop Datasets")
    ),
  ###################################################
  #                 LEFT SIDEBAR                    #
  ################################################### 
  sidebar = dashboardSidebar(
    sidebarMenu(
      menuItem("Initialisation", tabName = "setup", icon = icon("gears"),
               uiOutput("var.temp"),
               radioButtons("timestamp", label = "Fréquence", 
                            choices = c("Quotidienne", "Mensuelle", "Trimestrielle"), 
                            selected = "Quotidienne"),
               uiOutput("var.1"),
               uiOutput("var.2")),
      menuItem("Tendance", tabName = "dashboard", icon = icon("chart-line"),
               prettySwitch(inputId = "trend", label = "Afficher", 
                            fill = TRUE, status = "primary"),
               prettyToggle(inputId = "auto.trend", label_on = "AUTO",
                            label_off = "Manuel", icon_on = icon("check"),
                            icon_off = icon("remove")),
               sliderInput(inputId = "trend.order", label = "Ordre MA", 
                           min = 1, max = 100, value = 3)),
      menuItem("Saisonnalité", icon = icon("recycle"), tabName = "season",
               prettySwitch(inputId = "seasonal.adjustment", label = "Ajuster",
                            fill = TRUE, status = "primary")),
      menuItem("Corrélation", icon = icon("crop-alt"), tabName = "corr",
               prettySwitch(inputId = "corr", label = "Montrer", 
                            fill = TRUE, status = "primary"),
               uiOutput("var.3")),
      menuItem("Prévision", icon = icon(name = "magic"),
               prettySwitch(inputId = "pred", label = "Prédire", 
                            fill = TRUE, status = "primary"),
               sliderInput(inputId = "h", label = "Nb de périodes :", 
                           min = 1, max = 100, value = 3)),
      menuItem("Modélisation", icon = icon(name = "magic"),
               prettySwitch(inputId = "mod", label = "Modéliser",
                            fill = TRUE, status = "primary"),
               sliderInput(inputId = "ahead", label = "Nb de périodes :",
                           min = 1, max = 100, value = 3))
      )
    ),
  ###################################################
  #                     BODY                        #
  ################################################### 
  body = dashboardBody(
    style = "margin: 15px;",
    setShadow(class = "dropdown-menu"),
    br(), br(),
    useShinyjs(),
    fluidRow(
      column(8, boxPlus(title = "", closable = TRUE, width = NULL,
                        status = "warning", solidHeader = FALSE, collapsible = TRUE,
                        enable_sidebar = TRUE, sidebar_background = "light", 
                        sidebar_start_open = FALSE,
                        sidebar_content = tagList(
                          checkboxInput("acf", "ACF", FALSE),
                          checkboxInput("pacf", "PACF", FALSE)),
                        wellPanel(
                          conditionalPanel(
                            condition = "input.pred==false & input.corr==false",
                            plotlyOutput("plot")),
                          conditionalPanel(
                            condition = "input.pred==false & input.corr==true",
                            plotlyOutput("plot.corr")),
                          conditionalPanel(
                            condition = "input.pred==true & input.corr==false",
                            plotOutput("gplot")),
                          conditionalPanel(
                            condition = "input.mod==true",
                            plotOutput("mplot"))
                          )
                        )
             ),
      column(4, boxPlus(title = "Data uploaded", closable = TRUE, width = NULL, 
                        status = "warning", solidHeader = FALSE, collapsible = TRUE,
                        dataTableOutput("rawData"), 
                        style = "height:500px; overflow-y: scroll;overflow-x: scroll;"
                        )
             )
      ),
    fluidRow(
      column(12, boxPlus(title = "", closable = TRUE, width = NULL,
                         status = "warning", solidHeader = FALSE, collapsible = TRUE,
                         enable_sidebar = TRUE, sidebar_start_open = FALSE,
                 sidebar_content = tagList(
                   checkboxInput("acf.x", "ACF", FALSE),
                   checkboxInput("pacf.x", "PACF", FALSE)),
                 wellPanel(
                   conditionalPanel(
                     condition = "input.pred==false",
                     plotlyOutput("plot.x")),
                   conditionalPanel(
                     condition = "input.pred==true",
                     plotOutput("gplot.x")))
                 )
             )
      )
    )
)
AlexisMayer/toolbox documentation built on Aug. 25, 2020, 3:56 p.m.