在下面的MWE中我得到一个黑色填充框,当我第一次运行源时,该图应该是没有任何内容。
我什么也没说,因为在点击按钮之前表格没有(IMO正确)显示。我希望绘图的行为相同,即直到单击按钮,屏幕上的所有内容都是按钮。我究竟做错了什么?
library(shiny)
myUI = bootstrapPage(
actionButton(inputId="gobutton", label="Go"),
plotOutput("plot"),
tableOutput("table")
)
mySERVER = function(input, output) {
output$plot <- renderPlot({
if(input$gobutton==0) {return(NULL)}
hist(runif(100))
})
output$table <- renderTable({
if(input$gobutton==0) {return(NULL)}
data.frame(x=runif(10), y=seq(1:10))
})
}
runApp(list(
ui = myUI,
server = mySERVER
))
我正在使用Firefox和最新的稳定R&amp;光泽
> sessionInfo()
R version 3.0.2 (2013-09-25)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_GB.utf8 LC_NUMERIC=C
[3] LC_TIME=en_GB.utf8 LC_COLLATE=en_GB.utf8
[5] LC_MONETARY=en_GB.utf8 LC_MESSAGES=en_GB.utf8
[7] LC_PAPER=en_GB.utf8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.utf8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] shiny_0.8.0
loaded via a namespace (and not attached):
[1] bitops_1.0-6 Cairo_1.5-5 caTools_1.16 digest_0.6.4 httpuv_1.2.2
[6] Rcpp_0.11.0 RJSONIO_1.0-3 tools_3.0.2 xtable_1.7-1
答案 0 :(得分:2)
我认为这与开罗套餐有关。
我的系统没有安装Cairo。如果我在Firefox中使用全新的R会话运行您的代码,则不使用黑盒子(只需使用GO按钮)。
然后我安装并加载Cairo。当我重新运行你的代码时,我得到了黑盒子。
然后我卸载开罗detach("package:Cairo", unload=T)
:仍然得到黑盒子。
然后我重新启动R并运行你的代码:仍然是黑盒子。
然后 ininstall Cairo remove.packages("Cairo")
并重启R: no black box 。
所以看起来Shiny会加载Cairo,如果它被安装,那就是导致黑盒子的原因。