使用ggvis的R Shiny app在上传过程中出错

时间:2014-10-28 16:12:17

标签: r shiny rcpp dplyr ggvis

我正在尝试托管使用shinyapps.io上的ggvis库的闪亮应用。 上传我的应用时,runApp()功能在构建托管应用所需的软件包时失败。安装dplyr时会发生错误,这是由ggvis使用的。 Dplyr反过来使用Rcpp,并且没有从RCRAN检索正确的版本,尽管它是可用的。

有人可以帮助我吗?有没有办法手动指定包版本来绕过这个问题?

重现问题所需的R代码和步骤:

## ui.R
shinyUI(bootstrapPage(
  ggvisOutput("p"),
  uiOutput("p_ui")
))

## server.R
shinyServer(function(input, output, session) {
  input_width <- reactive(input$width)

  mtcars %>% 
    ggvis(~mpg) %>% 
    layer_histograms(width = input_width) %>%
    bind_shiny("ggvis", "ggvis_ui")
})


## When located in folder with ui.R and server.R file:
library("shiny")
library("shinyapps")
deployApp() # command that fails

错误摘录:

...
[2014-10-28T16:05:00.464944786+0000] Building R package: dplyr (0.3.0.2)
/mnt/packages/build /mnt
* installing to library ‘/usr/local/lib/R/site-library’
* installing *source* package ‘dplyr’ ...
** package ‘dplyr’ successfully unpacked and MD5 sums checked
** libs
Error: package ‘Rcpp’ 0.11.2 was found, but >= 0.11.3 is required by ‘dplyr’
* removing ‘/usr/local/lib/R/site-library/dplyr’
################################### End Log ################################### 
Error: Unhandled Exception: Child Task 2477816 failed: Error building image: Error building dplyr (0.3.0.2). Build exited with non-zero status: 1
Execution halted

会话信息:

> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252        LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base 

1 个答案:

答案 0 :(得分:1)

消息

  

错误:找到包'Rcpp'0.11.2,但'dplyr'需要&gt; = 0.11.3

表示您使用的是旧版本的R(可能是3.0.2?),它在仅包含Rcpp 0.11.2的树中搜索。

修复很简单:升级R.然后安装您的依赖项,包括Rcpp install.packages("Rcpp")的最新版本。