Ivan Ip
19th February 2019
Dataset “diamonds” is sourced from R package ggplot. This presentation is to summarize the Criteria Count,
Criteria of Diamonds,
In addition, Violin Plot shows their dispersion with Carat.
library(shiny)
library(ggplot2)
library(data.table)
data("diamonds")
Diamond_CC = data.table(diamonds)
Diamond_ui = fluidPage(
titlePanel("Diamond Carat Summary"),
sidebarLayout(
sidebarPanel(
selectInput("Criteria", "Choose a Criteria (x = ):",
choices = c("Cut", "Color", "Clarity")),
h5("y = Carat"),
br(),
actionButton("update", "Update View")),
mainPanel(
h4("Summary by Criteria Count"),
verbatimTextOutput("summary"),
h4("Violin Plot by Criteria"),
plotOutput("plot"))))
Diamonds_server = shinyServer(function(input, output){
data = eventReactive(input$update, {
switch(input$Criteria,
"Cut" = Diamond_CC$cut, "Color" = Diamond_CC$color,
"Clarity" = Diamond_CC$clarity)})
output$summary = renderPrint({summary(data())})
output$plot = renderPlot({
ggplot(Diamond_CC, aes_string(x = data(), y = Diamond_CC$carat)) + geom_violin()})})
shinyApp(Diamond_ui, Diamonds_server)
Thank you