Spaces:
Sleeping
Sleeping
--- | |
title: "Diamonds Explorer" | |
author: "Barkamian Analytics" | |
format: dashboard | |
server: shiny | |
--- | |
```{r} | |
#| context: setup | |
library(ggplot2) | |
dataset <- diamonds | |
``` | |
# {.sidebar} | |
```{r} | |
sliderInput('sampleSize', 'Sample Size', | |
min=1, max=nrow(dataset), | |
value=min(1000, nrow(dataset)), | |
step=500, round=0) | |
br() | |
checkboxInput('jitter', 'Jitter') | |
checkboxInput('smooth', 'Smooth') | |
``` | |
```{r} | |
selectInput('x', 'X', names(dataset)) | |
selectInput('y', 'Y', names(dataset), names(dataset)[[2]]) | |
selectInput('color', 'Color', c('None', names(dataset))) | |
``` | |
```{r} | |
selectInput('facet_row', 'Facet Row', | |
c(None='.', names(diamonds[sapply(diamonds, is.factor)]))) | |
selectInput('facet_col', 'Facet Column', | |
c(None='.', names(diamonds[sapply(diamonds, is.factor)]))) | |
``` | |
# Plot | |
```{r} | |
plotOutput('plot') | |
``` | |
# Data | |
```{r} | |
tableOutput('data') | |
``` | |
```{r} | |
#| context: server | |
dataset <- reactive({ | |
diamonds[sample(nrow(diamonds), input$sampleSize),] | |
}) | |
output$plot <- renderPlot({ | |
p <- ggplot( | |
dataset(), | |
aes_string(x=input$x, y=input$y)) + geom_point() | |
if (input$color != 'None') | |
p <- p + aes_string(color=input$color) | |
facets <- paste(input$facet_row, '~', input$facet_col) | |
if (facets != '. ~ .') | |
p <- p + facet_grid(facets) | |
if (input$jitter) | |
p <- p + geom_jitter() | |
if (input$smooth) | |
p <- p + geom_smooth() | |
p | |
}) | |
output$data <- renderTable({ | |
dataset() | |
}) | |
``` |