mirror of
https://github.com/rstudio/shiny.git
synced 2026-01-30 17:28:32 -05:00
43 lines
1.2 KiB
R
43 lines
1.2 KiB
R
library(shiny)
|
|
|
|
# Define server logic for random distribution application
|
|
shinyServer(function(input, output) {
|
|
|
|
# Reactive expression to generate the requested distribution. This is
|
|
# called whenever the inputs change. The output expressions defined
|
|
# below then all used the value computed from this expression
|
|
data <- reactive({
|
|
dist <- switch(input$dist,
|
|
norm = rnorm,
|
|
unif = runif,
|
|
lnorm = rlnorm,
|
|
exp = rexp,
|
|
rnorm)
|
|
|
|
dist(input$n)
|
|
})
|
|
|
|
# Generate a plot of the data. Also uses the inputs to build the
|
|
# plot label. Note that the dependencies on both the inputs and
|
|
# the data reactive expression are both tracked, and all expressions
|
|
# are called in the sequence implied by the dependency graph
|
|
output$plot <- renderPlot({
|
|
dist <- input$dist
|
|
n <- input$n
|
|
|
|
hist(data(),
|
|
main=paste('r', dist, '(', n, ')', sep=''))
|
|
})
|
|
|
|
# Generate a summary of the data
|
|
output$summary <- renderPrint({
|
|
summary(data())
|
|
})
|
|
|
|
# Generate an HTML table view of the data
|
|
output$table <- renderTable({
|
|
data.frame(x=data())
|
|
})
|
|
|
|
})
|