我正在尝试使用 Rstudio 进行绘图。但是当我这样做时,plot(cars)
这是基本功能,我得到一个Graphics Error in R
.
这是我所做的:
> plot(cars)
Error in RStudioGD() :
Shadow graphics device error: r error 4 (R code execution error)
请指导我完成。
最初,我将 RStudio 重新安装到最新版本 (1.1.442),并遵循许多建议,还通过以下方式使用 aptitude 的 R-base* 系统(升级到 R 3.4.3):
sudo aptitude reinstall libpangocairo-1.0-0 libpango-1.0-0
sudo aptitude reinstall r-base r-base-core r-base-dev
我使用 aptitude 是因为它通常比 apt-get 更好地解开复杂的依赖树。之后,当没有包被加载到环境中时,它工作得很好,但是任何包加载都会产生各种各样的与 DLL 相关的错误,如下所示。
最终解决方案(无需重新安装):
加载自制库后,该错误再次显示。真正的问题是打开 DLL 的数量。如果您加载太多的包或文件,您将达到限制,并且您将在maximal number of DLLs reached...
or failed to load cairo DLL
(此错误警告)甚至lapack routines cannot be loaded
. 当我加载完整的依赖项自制库时,我随机遇到了这三个错误。
于是我又开始寻找解决方案。最后一个是允许更多的 DLL 并且这样做足以将环境变量设置R_MAX_NUM_DLLS
为更高的数字(我将其设置为 500)。为了避免每次阅读?Startup
文档并因此写入R_MAX_NUM_DLLS=500
Renviron 文件时都设置它的麻烦R-HOME/etc/Renviron.site
。就我而言(Ubuntu:16.04 是/usr/lib/R/etc/Renviron.site
. 这可以顺利解决问题。
谢天谢地,我刚刚退出 Rstudio 并重新启动,问题就消失了
在 Ubuntu 13.10 下,我在 rstudio 服务器上遇到了类似的问题,尝试了所有不同的建议都没有用。终于想通了这个办法:
sudo service rstudio-server stop
sudo find / -name "rstudio" | xargs sudo rm -r
)sudo apt-get remove r-base-core r-base r-base-dev
sudo find / -name "R" | xargs sudo rm -r
)sudo apt-get install r-base-core r-base r-base-dev
Reinstall the package ggplot2 (install.packages"ggplot2") and invoke the library. It must work then
我遇到了同样的问题,发现 James Mao 的回答很有帮助,但我想避免重新安装 R,这样我就不必重新安装所有的 R 包。我能够通过重新安装 RStudio 而不重新安装 R 来解决这个问题,这是有道理的,因为错误出在 RStudio 上,而不是 R 本身。以下是说明:
sudo service rstudio-server stop
sudo find / -name "rstudio" | xargs sudo rm -r
)我今天遇到这个,reindatall Rstudio 仍然无法解决。终于安装了 textshaping install.packages('textshaping')。现在好了
我有同样的错误,我在 Ubuntu 上。我没有通过 R 安装,sudo apt-get install r-base
而是下载了特定版本,解压缩并手动安装:
./configure --with-readline=no --with-x=no --enable-R-shlib
make
sudo make install
我没有安装 cairograpghics,这对于使用 R 构建 2D 图形显然很重要。所以我安装了它:
sudo apt-get install libcairo2-dev
或者在这里找到适合您操作系统的版本:https ://www.cairographics.org/download/
然后我再次卸载 R,只需进入我之前使用上述命令编译并键入的下载的 R 文件夹:
sudo make uninstall
然后我再次配置并安装了相同的 R 版本。做到了。卸载重装很重要,只是安装cairographics没有用,你必须在使用前安装它./configure
。
我在 CentOS:7 Docker 容器中运行时出现以下错误rstudio-server verify-installation
:
27 Feb 2017 14:17:09 [rsession-rstudio-server] ERROR r error 4 (R code execution error) [errormsg=Error in system(paste(which, shQuote(names[i])), intern = TRUE, ignore.stderr = TRUE) :
error in running command
]; OCCURRED AT: rstudio::core::Error rstudio::r::exec::<unnamed>::evaluateExpressionsUnsafe(SEXPREC*, SEXPREC*, SEXPREC**, rstudio::r::sexp::Protect*, rstudio::r::exec::<unnamed>::EvalType) /root/rstudio/src/cpp/r/RExec.cpp:159; LOGGED FROM: rstudio::core::FilePath rstudio::session::module_context::findProgram(const std::string&) /root/rstudio/src/cpp/session/SessionModuleContext.cpp:879
27 Feb 2017 14:17:09 [rsession-rstudio-server] ERROR r error 4 (R code execution error) [errormsg=Error in system(paste(which, shQuote(names[i])), intern = TRUE, ignore.stderr = TRUE) :
error in running command
]; OCCURRED AT: rstudio::core::Error rstudio::r::exec::<unnamed>::evaluateExpressionsUnsafe(SEXPREC*, SEXPREC*, SEXPREC**, rstudio::r::sexp::Protect*, rstudio::r::exec::<unnamed>::EvalType) /root/rstudio/src/cpp/r/RExec.cpp:159; LOGGED FROM: rstudio::core::FilePath rstudio::session::module_context::findProgram(const std::string&) /root/rstudio/src/cpp/session/SessionModuleContext.cpp:879
我通过安装which
命令修复了它:yum install which
我遇到了同样的问题(即使我已经使用相同的安装一年多了没有这个问题)。我只需要重新启动计算机,一切就又好了。:D