当我在使用 rgl.open() 并将 bg 设置为白色后,使用 rgl 包在不同的画布(rgl 设备)中绘制多个 3d 图形时,绘图风格似乎与默认风格大不相同。有没有办法设置这个?请看下面的图片。当旋转这两个图表时,您可以获得非常不同的体验。您可以尝试在默认画布中绘制相同的图形,打开一个新的并绘制相同的图片。
此外,有没有办法将坐标的外框从立方体更改为球体?
(编辑) 使用open3d()
而不是rgl.open()
打开新窗口。该文档警告不要将rgl.*
呼叫与*3d
呼叫混合,我想这是一个例子。这是三个图——默认值rgl.open()
、 和open3d()
...
library(rgl)
plot3d(1:4,1:4,1:4)
rgl.open()
plot3d(1:4,1:4,1:4)
open3d()
plot3d(1:4,1:4,1:4)
结果并排:
会话信息:
R Under development (unstable) (2012-12-14 r61321)
Platform: i686-pc-linux-gnu (32-bit)
[locale snipped]
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] rgl_0.92.894
如果您想在会话之间保持相同的设置,我认为您需要在启动时打开包 'rgl'(请参阅 参考资料?Startup
)并指定rgl.materials
您想要使用的设置。我从 help(package=rgl) 的索引中搜索了选项设置,但找不到选项设置。工作区中有一个名为的列表对象r3dDefaults
,可以对其进行修改。也许:
r3dDefaults$bg$color <- "white" # Change the value to get something different
# > names(r3dDefaults)
# [1] "userMatrix" "mouseMode" "FOV" "bg" "family" "material"
*.r3d
命令和rgl.*
命令之间的设备行为之间的差异?r3d
在?open.3d
.
关于对球坐标参考的渴望,请参见help(rgl.bg)
页面并尝试“sphere=TRUE”参数。(我觉得它不那么令人愉快,但 YMMV。)
rgl.open()
rgl.bg(sphere=TRUE, color=c("grey","blue"), lit=FALSE, back="lines" )