我想让http://rstudio.github.io/shinydashboard/在我的Ubuntu 14.10笔记本电脑上工作。
我按照安装说明进行操作:
http://rstudio.github.io/shinydashboard/get_started.html
基本shiny
页面有效。例如:
http://localhost:3838/sample-apps/hello/
但是当我尝试其中一个shinydashboard
示例时,我收到错误:
http://localhost:3838/sample-apps/shiny/
ERROR: there is no package called "shinydashboard"
如果我在终端中运行R会话,我可以加载shinydashboard
如果我复制+粘贴,我会在仪表板上显示一个浏览器窗口
R会话中的这段代码:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody()
)
server <- function(input, output) { }
shinyApp(ui, server)
它说:
Attaching package: 'shinydashboard'
The following object is masked from 'package:graphics':
box
>
> ui <- dashboardPage(
+ dashboardHeader(),
+ dashboardSidebar(),
+ dashboardBody()
+ )
>
> server <- function(input, output) { }
>
> shinyApp(ui, server)
Listening on http://127.0.0.1:7093
我试图安装闪亮服务器的devel版本,但那样
也没有帮助。这是我的sessionInfo()
:
> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-pc-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_GB.UTF-8 LC_COLLATE=en_GB.UTF-8
[5] LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8
[7] LC_PAPER=en_GB.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] shinydashboard_0.2.3 shiny_0.11.1.9002
loaded via a namespace (and not attached):
[1] bitops_1.0-6 devtools_1.7.0 digest_0.6.8 htmltools_0.2.6
[5] httpuv_1.3.2 httr_0.6.1 mime_0.2 R6_2.0.1
[9] Rcpp_0.11.3 RCurl_1.95-4.5 stringr_0.6.2 tools_3.1.1
[13] xtable_1.7-4
编辑:
更多信息:
ls -ld /usr/local/lib/R/site-library
drwxrwsr-x 11 root staff 4096 Mar 1 12:47 /usr/local/lib/R/site-library
为什么我不在http://localhost:3838上工作?哪个打包需要以root身份安装?
答案 0 :(得分:14)
问题是,闪亮服务器无法找到您安装的软件包,因为它将其作为名为shiny
的其他用户运行。此用户是在安装shiny-server
解决此问题的最简单(也是最安全的恕我直言)方法是使用以下步骤将软件包安装为闪亮的用户。
sudo passwd shiny
为用户设置密码,现在输入并确认密码su - shiny
R
(不使用sudo)$ R
install.packages("shinydashboard")
请注意,如果您在同一台计算机上安装了rstudio-server,则可以使用该界面执行步骤2-4。只需使用相同的域/ ip并使用:8787用于rstudio-server接口,而不是:3838用于闪亮服务器。
答案 1 :(得分:5)
在Ubuntu(和Debian)上你有几个选择。
执行ls -ld /usr/local/lib/R/site-library
并注意该目录归组adm
所有。让自己成为该组的一部分,或者将组更改为您所属的组。现在您可以只写入该目录,这样一个普通的install.packages()
就可以了。
通过sudo apt-get install littler
及其便捷的脚本install.r
和install2.r
使用littler。我在工作和家庭的许多机器上从命令行使用这些很多。然后,这就像install.r shinydashboard
一样简单(一旦您将install.r
复制或链接到您的$PATH
)。
如果你坚持,使用大锤并以root身份启动R.由于权限升级,这通常不是一个好主意。
答案 2 :(得分:2)
如果您使用Shiny Server,则需要使用root权限安装所有R软件包。有关详细信息,请参阅Section 1.3.4 of the Shiny Server admin guide。
答案 3 :(得分:1)
这个答案应该有效:https://stackoverflow.com/a/28834778/719016
我现在意识到将软件包安装为R
而不是sudo R
是一个权限问题。
我暂时通过安装$USER
然后使用lib.loc
指向库来解决它:
library(shinydashboard, lib.loc="/home/avilella/R/x86_64-pc-linux-gnu-library/3.1")
答案 4 :(得分:1)
在sudo中安装库。
1- su #to处于模式sudoer 2-磁带密码 3- R 4- install.packages(&#39; shinydashboard&#39;)
答案 5 :(得分:1)
我对“d3heatmap”包有类似的问题。它在RStudio(桌面和Web)中运行,但在Web浏览器中出错。
唯一可行的解决方案是从“root”帐户下的R命令行安装软件包。