我正在尝试创建一个简单的闪亮应用程序,用于绘制在Amazon ec2上运行的rstudio内的直方图,以便将我的结果数据存储为.RData文件。我仔细检查了一切。看起来很好。 我还检查了数据类型:都是数字。
我的代码:
ui.R
# shiny plots on top_docs data
library(shiny)
shinyUI(fluidPage(
# Header title
titlePanel(title = h4("Top doctors plots - a histograms", align = "center")),
# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
sliderInput(
selectInput("var", "1, Select the variables from top doc summary file",
choices =c( "service_total" = 1,
"ben_total" = 2,
"payment" = 3,
"charged" = 4,
"allowed" = 5,
"unique_services_per_patient" = 6,
"duplicates_per_service" = 7,
"services_per_patient" = 8), selected= 1 ),
br(),
sliderInput("bins", "2, Select the number of BINs for histogram", min = 5, max = 40, value=20),
br(),
radioButtons("color", "3, Select the color of histogram", choices =c("Green", "Red", "Yellow"), selected= "Green")
)),
# Show a plot of the generated distribution
mainPanel(
plotOutput("myhist")
)
))
)
server.R
`library(ggplot2)
library(shiny)
options(shiny.error=browser)
load("/******/top_docs.RData", envir=.GlobalEnv)
shinyServer(function(input, output) {
output$myhist <- renderPlot({
# generate var based on input$var from ui.R
col <- as.numeric(input$var)
hist(top_docs[,col], breaks = seq(0, max(top_docs[,col], l = input$bins+1), col=input$color, main="Histogram of Top docs", xlab=names(top_docs[col])))
})
})
`
答案 0 :(得分:1)
找到它...所有sidebarPanel
内容都在一个sliderInput
函数内部,提供错误
top_docs = data.frame( service_total = sample(1:100000, 40, replace=T),
ben_total = sample(1:100000, 40, replace=T)
, payment = sample(1:100000, 40, replace=T), charged = sample(1:100000, 40, replace=T)
, allowed = sample(1:100000, 40, replace=T), unique_services_per_patient = runif(40, 1, 5.2)
, duplicates_per_service = runif(40, 1.1, 16.2), services_per_patient = runif(40, 1.3, 70) )
# shiny plots on top_docs data
library(shiny)
ui <- fluidPage(
# Header title
titlePanel(title = h4("Top doctors plots - a histograms", align = "center")),
# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
# sliderInput( < ------------- HERE
selectInput("var", "1, Select the variables from top doc summary file",
choices =c( "service_total" = 1,
"ben_total" = 2,
"payment" = 3,
"charged" = 4,
"allowed" = 5,
"unique_services_per_patient" = 6,
"duplicates_per_service" = 7,
"services_per_patient" = 8), selected= 1 ),
br(),
sliderInput("bins", "2, Select the number of BINs for histogram", min = 5, max = 40, value=20),
br(),
radioButtons("color", "3, Select the color of histogram", choices =c("Green", "Red", "Yellow"), selected= "Green")
# ) < ------------- HERE
),
# Show a plot of the generated distribution
mainPanel(
plotOutput("myhist")
)
))
server <- shinyServer(function(input, output) {
output$myhist <- renderPlot({
# generate var based on input$var from ui.R
col <- as.numeric(input$var)
hist(top_docs[,col], breaks = seq(0, max(top_docs[,col]), l = input$bins+1)
, col=input$color, main="Histogram of Top docs", xlab=names(top_docs[col]))
})
})
shinyApp(ui, server)