Home > Software design >  Loading online xml data to slider in R shiny dashboard
Loading online xml data to slider in R shiny dashboard

Time:10-04

My friend and I built an R shiny dashboard using downloaded data. The code is as follows:

library(shiny)
library(shinydashboard)
library(dplyr)
library(tidyverse)
library(reshape)
library(scales)



ecd <- read.csv("ecd-figures.csv")

c(
  "No of case" = "no_of_case",
  "Minor Case" = "minor_case",
  "All Non Fatal Case" = "all_non_fatal_case",
  "Fatal Case" = "fatal_case"
) -> vec

ui <- fluidPage(sidebarLayout(
  sidebarPanel
  (
    checkboxGroupInput("feature",
                       "Feature",
                       vec),
    sliderInput(
      "year",
      "Year",
      min = min(ecd$year),
      max = max(ecd$year),
      value = range(ecd$year),
      sep = "",
      step = 1
    )
  ),
  
  mainPanel(tabsetPanel(
    tabPanel("Plot", plotOutput("correlation_plot")),
    tabPanel("Table", tableOutput("ecd"))
  ))
))



server <- function(input, output) {
  yearrange <- reactive({
    ecd %>%
      subset(year %in% input$year[1]:input$year[2]) %>%
      select(c(year, input$feature))
  })
  
  
  
  output$correlation_plot <- renderPlot({
    ecdsubset <- yearrange()
    
    ecdsubset <- melt(ecdsubset, id = "year")
    validate(need(input$feature, 'Check at least one item.'))
    ggplot(ecdsubset, aes(x = year, y = value, color = variable))   geom_line(size = 1)   scale_x_continuous(breaks =
                                                                                                               seq(input$year[1], input$year[2], by = 1))
    
  })
  output$ecd <- renderTable({
    yearrange()
  })
  
}

shinyApp(ui, server)

The simple data file is here: enter image description here

  • Related