inst/shiny-apps/gpim/app.R

library(shiny)
library(shinydashboard)
library(fpp)
library(forecast)
library(plyr)
library(dplyr)
library(tidyr)
library(dygraphs)
library(ggplot2)

ui <- dashboardPage(
  dashboardHeader(title = 'VisVarejo'),

  dashboardSidebar(
    sliderInput("ar",
                "AR",
                min = 0,
                max = 12,
                value = 0, step = 1),
    sliderInput("ma",
                "MA",
                min = 0,
                max = 12,
                value = 3, step = 1),
    sliderInput("dif",
                "DIF",
                min = 0,
                max = 2,
                value = 1, step = 1),
    tags$hr(),
    sliderInput("sar",
                "AR Sazonal",
                min = 0,
                max = 12,
                value = 0, step = 1),
    sliderInput("sma",
                "MA Sazonal",
                min = 0,
                max = 12,
                value = 1, step = 1),
    sliderInput("sdif",
                "DIF Sazonal",
                min = 0,
                max = 2,
                value = 1, step = 1),
    tags$hr(),
    sliderInput("h",
                "Janela de predição",
                min = 1,
                max = 50,
                value = 12)
  ),

  dashboardBody(
    fluidRow(
      plotOutput('contratos')
    ),
    fluidRow(
      plotOutput('diag')
    )
  )
)

server <- shinyServer(function(input, output) {

  fit <- reactive({
    Arima(euretail,
          order = c(input$ar, input$dif, input$ma),
          seasonal = c(input$sar, input$sdif, input$sma))
  })
  output$contratos <- renderPlot({
    plot(forecast(fit(), h = input$h))
  })
  output$diag <- renderPlot({
    tsdisplay(residuals(fit()))
  })
})


shinyApp(ui = ui, server = server)
jtrecenti/gpim documentation built on May 20, 2019, 3:17 a.m.