不完全确定此错误来自何处。这是错误:
Error in match.arg(tolower(breaks), c("sturges", "fd", "freedman-diaconis", 'arg' should be one of “sturges”, “fd”,
“freedman-diaconis”,“scott”
这是我的代码:
library("RODBC")
datalithicdb <- odbcDriverConnect(connection="Driver={SQLServer};server=CGPC-TECH1\\SQLEXPRESS;database=datalithic;trusted_connection=true;")
boedata <- sqlQuery(datalithicdb, "select EUROil, WellID from vwWellNames where EUROil <>0")
med<-median(boedata$EUROil)
l=1/10*med
h=9/10*med
truncboedata <- subset(boedata, EUROil>l & EUROil<h)
hist(
truncboedata$EUROil,
main= "OIL EUR Histogram",
freq=FALSE,
probability = TRUE,
xlab="EUR",
ylab="# of Wells",
col="green",border = "blue",
las=1,
breaks=Bin Size
)
close(datalithicdb)
这是ui.R文件
library(shiny)
shinyUI(fluidPage(
titlePanel("Oil EUR Data"),
sidebarLayout(
sidebarPanel(
"Slider",
sliderInput(inputId = "Bin Size",
label = "Number of Bins",
value = 100, min = 1,max = 1000)),
mainPanel(
)
)
)
)
提前致谢!
答案 0 :(得分:0)
让我们看一下?sliderInput
底部的示例:
ui <- fluidPage(
sliderInput("obs", "Number of observations:",
min = 0, max = 1000, value = 500
),
plotOutput("distPlot")
)
# Server logic
server <- function(input, output) {
output$distPlot <- renderPlot({
hist(rnorm(input$obs))
})
}
我们可以看到输入是使用输入ID "obs"
定义的。在服务器端,它被引用为input$obs
。你需要模仿这种风格。
你有breaks = Bin Size
的地方应该有类似breaks = input$Bin Size
的东西,但即使这样也行不通,因为正确的变量名不能有空格。你有几个选择来解决这个问题:
inputId = "n_bins"
,然后使用breaks = input$n_bins
input$`Bin Size`
input
列表:breaks = input[["Bin Size"]]
作为附注,我认为你可能对结果感到失望 - 他们似乎被贴错了标签。你给hist
一个关于休息次数的建议,这与箱子的数量成反比。如果用户想要非常大的垃圾箱,则应将滑块设置为非常低的数量,以便只有很少的休息时间。