RStudio Shiny ERROR: no hay un paquete llamado "shinydashboard"
(6)
Estoy tratando de hacer que http://rstudio.github.io/shinydashboard/ funcione en mi computadora portátil Ubuntu 14.10.
Seguí las instrucciones de instalación aquí:
http://rstudio.github.io/shinydashboard/get_started.html
Las páginas
shiny
básicas funcionan.
Por ejemplo:
http://localhost:3838/sample-apps/hello/
Pero cuando pruebo uno de los ejemplos de
shinydashboard
de
shinydashboard
, obtengo el error:
http://localhost:3838/sample-apps/shiny/
ERROR: there is no package called "shinydashboard"
Si ejecuto una sesión R en un terminal, puedo cargar la biblioteca del
shinydashboard
y obtengo una ventana del navegador con el panel si copio + pego este código en la sesión R:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody()
)
server <- function(input, output) { }
shinyApp(ui, server)
Dice:
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
Traté de instalar la versión de desarrollo del servidor brillante, pero eso tampoco ayudó.
Aquí está mi
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
EDITADO:
Más información:
ls -ld /usr/local/lib/R/site-library
drwxrwsr-x 11 root staff 4096 Mar 1 12:47 /usr/local/lib/R/site-library
¿Alguna idea de por qué no funciona en http: // localhost: 3838 ? ¿Qué paquete necesita instalarse como root?
El problema es que el servidor brillante no puede encontrar los paquetes que instala porque los ejecuta como un usuario diferente que se llama
shiny
.
Este usuario se crea al instalar el servidor brillante
La forma más fácil (y más segura en mi humilde opinión) de resolver esto es simplemente instalar los paquetes como el usuario brillante, utilizando los siguientes pasos.
-
Establezca una contraseña para el usuario usando
sudo passwd shiny
, ahora ingrese y confirme una contraseña -
Cambie a la cuenta brillante usando:
su - shiny
-
Llame
R
usando$ R
(sin sudo) -
Instale los paquetes necesarios, en este caso:
install.packages("shinydashboard")
Tenga en cuenta que si tiene instalado rstudio-server en la misma máquina, puede realizar los pasos 2 a 4 utilizando esa interfaz. Simplemente vaya al mismo dominio / ip y use: 8787 para la interfaz rstudio-server en lugar de: 3838 para el servidor brillante.
En Ubuntu (y Debian) tiene varias opciones.
-
Haga
ls -ld /usr/local/lib/R/site-library
y tenga en cuenta que el directorio es propiedad del grupoadm
. Hágase parte de ese grupo o, alternativamente, cambie el grupo a uno del que sea miembro. Ahora puede escribir en ese directorio, por lo que funcionará un viejoinstall.packages()
. -
Utilice littler través de
sudo apt-get install littler
y sus útiles scriptsinstall.r
einstall2.r
. Los uso mucho desde la línea de comandos en numerosas máquinas en el trabajo y en casa. Entonces esto es tan simple comoinstall.r shinydashboard
(una vez que copió o vinculóinstall.r
en algún lugar de su$PATH
). -
Si insiste, use un mazo y comience R como raíz. Eso generalmente no es una buena idea debido a la escalada de permisos.
Esta respuesta debería funcionar: https://.com/a/28834778/719016
Ahora me di cuenta de que era un problema de permisos al instalar paquetes como
R
lugar de
sudo R
Lo resolví momentáneamente instalándolo como
$USER
y luego señalando a la biblioteca con
lib.loc
:
library(shinydashboard, lib.loc="/home/avilella/R/x86_64-pc-linux-gnu-library/3.1")
Para instalar la biblioteca en sudo.
1- su # para estar en modo sudoer 2- pegue la contraseña 3- R 4- install.packages (''shinydashboard'')
Si usa Shiny Server, todos sus paquetes R deben instalarse con privilegios de root. Consulte la Sección 1.3.4 de la guía de administración de Shiny Server para obtener más detalles.
Tengo el problema similar para el paquete "d3heatmap". Se ejecuta en RStudio (escritorio y web) pero recibe un error en el navegador web.
La única solución viable era instalar el paquete desde la línea de comando R bajo la cuenta "root".