【问题标题】:Why is my 3D plot not showing up in R Studio plot viewer?为什么我的 3D 绘图没有显示在 R Studio 绘图查看器中?
【发布时间】:2017-05-03 22:25:25
【问题描述】:

我通常在 RStudio(版本 1.0.44)中查看绘图没有问题,但是当我尝试查看使用“rgl”包创建的 3D 绘图时,我的 RStudio 绘图查看器中没有任何内容。

我可以毫无问题地绘制情节(汽车)散点图。

这是我正在使用的代码:

install.packages("rgl")
library(rgl)

plot3d(iris[1:3])  # Nothing appears in RStudio plot viewer

plot(cars)  # The cars scatterplot appears in my RStudio plot viewer
dev.off()

任何想法为什么会这样,我还应该尝试什么?运行 plot3d(iris[1:3]) 时没有收到任何错误。我检查了 head(iris[1:3]) 以确保我正确加载了虹膜数据。我也尝试过更改绘图边距:

par(mar=c(4,4,4,4)

谢谢

【问题讨论】:

  • Rgl 通常在单独的窗口中绘图。 Rstudio 不支持 rgl 使用的图像处理函数。

标签: r plot 3d rgl


【解决方案1】:
  • “输出可以使用 OpenGL 显示在屏幕上,或各种标准 3D 文件格式,包括 WebGL、PLY、OBJ、STL”;
  • “在 R 中,rgl 场景通常有两种显示方式。旧的一种是在专用窗口中。在 Unix-likes 中,这是一个 X11 窗口;它是 Microsoft Windows 中的本机窗口。在 MacOS 上,需要安装 XQuartz 系统(请参阅http://xquartz.org)以支持此功能。”
  • “显示场景的新方法是在浏览器窗口或 RStudio 的查看器窗格中使用 WebGL。要选择此选项,请设置选项 (rgl.printRglwidget = TRUE)。每个操作都会更改场景将返回一个值,该值会在打印时触发新的 WebGL 显示。”

文档 FTW

【讨论】:

  • options(rgl.printRglwidget = TRUE) 可能会给你太多重绘。当您想要更新显示时,另一种方法是显式调用 rglwidget() 函数(以一种导致其结果打印的方式)。
【解决方案2】:

库(rgl)

pca3d(set.final.pca, group=set.final$Groups,show.labels = TRUE,show.centroids = TRUE,show.ellipses=FALSE, show.group.labels=FALSE) rglwidget()

【讨论】:

    猜你喜欢
    • 2019-12-20
    • 2018-02-11
    • 1970-01-01
    • 2016-12-29
    • 2016-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多