R中的包rgl未在MacOS中加载
我在 R (3.6.3) 中安装了 rgl 包 (0.104.16),但它没有加载。我没有收到任何错误。它永远不会结束加载。我尝试重新安装 R 和 RStudio 以及 Xquartz。没有任何工作。我有 Mac OS Catalina 版本 10.15.7。任何帮助将不胜感激!干杯
回答
编辑以添加新的细节和建议的修复。
这似乎是由于 2 月初发布的 Xquartz 2.8.0beta 版本中的问题。有两个问题:
-
它对 进行了不兼容的更改
libX11.6.dylib,因此rgl为 2.7.11 版本构建的程序(如 的 CRAN 二进制文件)将无法运行。如果您rgl从源代码构建(以及使用 X11 的所有其他内容),那可能没问题——这是给我的。 -
当您卸载它时,它会留下两个在启动
/Library/LaunchDaemons/org.xquartz.startx.plist时运行的程序:( 在您重新启动系统/Library/LaunchAgents/org.xquartz.startx.plist时运行)和(在您登录时运行)。如果您随后安装 2.7.11,这些将无法运行(可能是因为上面提到的 libX11 更改)。在这一点上,X11 中的任何内容都不起作用。
所以解决方案似乎是:
- 通过将 XQuartz 从
Applications/Utilities文件夹拖到垃圾箱来卸载它。 rgl通过remove.packages("rgl")在 R 中运行卸载。- 删除名为
org.xquartz.startx.plistfrom/Library/LaunchDaemons和 的这两个文件/Library/LaunchAgents。 - 重新启动系统以删除从这些文件启动的进程。
- 重新安装 XQuartz 2.7.11。
rgl从 CRAN 或从源重新安装。
如果我错了并且该过程不起作用,那么只要您的rgl版本至少为 0.105.12(但不会给您任何rgl窗口),这几乎肯定会起作用:
# Start a new session
options(rgl.useNULL = TRUE)
library(rgl)
要查看您的显示,请运行该rglwidget()函数,它们将显示在浏览器或 RStudio 查看器窗格中。