library(shiny)
library(ggplot2)
library(dplyr)
#setwd("./Roppimine/Automaks/CarDistribution")
ui <- fluidPage(
#Input() sections
titlePanel("Eesti autode jaotus võimsuse ja mootori mahu järgi"),
sidebarLayout(
sidebarPanel(
#Auto mootori liik
selectInput(inputId ="Mootorityyp", "Vali auto mootori tüüp",
c("Kõik",
"Bensiin",
"Bensiin hübriid",
"Diisel",
"Diisel hübriid",
"Bensiin kat.",
"Diisel",
"Diisel hübriid",
"Elekter",
"Gaas",
"Surugaas (CNG)",
"Veeldatud gaas (LPG)"
#Määramata
))
),
mainPanel(
plotOutput(outputId="scatter1", brush = "plot_brush"),
h4(outputId="tabelipealkiri"),
column(4,
tableOutput(outputId = "tabel")
),
#br(),br(),
#h4("Joonisel märgitud sõidukid"),
dataTableOutput(outputId = "valitud")
)
)
)
server <- function(input, output) {
load("data/andmedshiny.Rda")
andmedjoonisele <- reactive({
if (input$Mootorityyp=="Kõik") {
andmedjoonisele<-andmed
} else {
andmedjoonisele<-andmed[andmed$Mootorityyp==input$Mootorityyp,]
}
andmedjoonisele
})
output$scatter1<-renderPlot({
mysubtitle<-paste0("Mootori tüüp: ", input$Mootorityyp)
ggplot(andmedjoonisele(), aes(x=Mootorimaht, y=Mootorivoimsus, color=Aasta)) +
geom_point(aes(size=Arv)) +
labs(y="Mootori võimsus", x="Mootori maht", title="Sõiduautode jaotus mootori võimsuse ja mahu järgi, 2016", subtitle=mysubtitle,
caption="Allikas: Maanteeameti andmed 31.08.2016")
})
output$tabelipealkiri<-renderPrint({
paste0("Autode arv mootori tüübi järgi: ", input$Mootorityyp)
})
output$tabel<-renderTable({
andmedtabelisse <- andmedjoonisele() %>%
group_by(Aasta) %>%
summarize(Arv=sum(Arv)) %>%
select(Aasta, Arv)
andmedtabelisse
},
digits=0
)
# Create data table
output$valitud <- DT::renderDataTable({
brushedPoints(andmedjoonisele(), brush = input$plot_brush) %>%
select(Valjalaskeaasta, Mootorivoimsus, Mootorimaht, Mootorityyp, Keretyyp)
})
}
shinyApp(ui = ui, server = server)