R: rgl 3D plots bounding box faces 颜色和笔画
R: rgl 3D plots bounding box faces colors and strokes
我目前正在使用 rgl 和 persp3d() 绘制简单的 3D 图。我尝试使用 bbox3d() 但我无法使框周围的笔画(back/bottom 中的 3 个平面)出现(类似于 axes3d()):
axes3d()的问题是边界box/planes没有填充颜色(至少我不知道如何实现)。
感谢您的宝贵时间!
这里是生成实际版本的代码:
library("rgl")
x=c(0,1,2,3,4,5,6)
y=x
z=outer(x,y,function(x,y){x+y})
persp3d(x,y,z,col="grey")
bbox3d(lwd=5,box=T,color=c("grey","black"))
您可以将 segments3d
与 margin
和 floating
属性结合使用。例如:
library("rgl")
x=c(0,1,2,3,4,5,6)
y=x
z=outer(x,y,function(x,y){x+y})
open3d()
#> glX
#> 1
persp3d(x,y,z,col="grey", axes=FALSE)
limits <- par3d("bbox")
bbox3d(col=c("gray", "black"), polygon_offset = 1)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="x++",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="x--",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="y++",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="y--",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="z++",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="z--",
floating = TRUE)
由 reprex package (v2.0.1)
于 2022-03-18 创建
它并不完美,因为线段在角落处的渲染效果不佳,而且在您进行任何旋转之前的初始显示中似乎存在错误。 ?mtext3d
帮助主题中描述了边距对象的有趣坐标系。
我目前正在使用 rgl 和 persp3d() 绘制简单的 3D 图。我尝试使用 bbox3d() 但我无法使框周围的笔画(back/bottom 中的 3 个平面)出现(类似于 axes3d()):
axes3d()的问题是边界box/planes没有填充颜色(至少我不知道如何实现)。 感谢您的宝贵时间!
这里是生成实际版本的代码:
library("rgl")
x=c(0,1,2,3,4,5,6)
y=x
z=outer(x,y,function(x,y){x+y})
persp3d(x,y,z,col="grey")
bbox3d(lwd=5,box=T,color=c("grey","black"))
您可以将 segments3d
与 margin
和 floating
属性结合使用。例如:
library("rgl")
x=c(0,1,2,3,4,5,6)
y=x
z=outer(x,y,function(x,y){x+y})
open3d()
#> glX
#> 1
persp3d(x,y,z,col="grey", axes=FALSE)
limits <- par3d("bbox")
bbox3d(col=c("gray", "black"), polygon_offset = 1)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="x++",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="x--",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="y++",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="y--",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="z++",
floating = TRUE)
segments3d(x = c(-Inf, Inf),
y=0, z=0,
lwd=5, margin="z--",
floating = TRUE)
由 reprex package (v2.0.1)
于 2022-03-18 创建它并不完美,因为线段在角落处的渲染效果不佳,而且在您进行任何旋转之前的初始显示中似乎存在错误。 ?mtext3d
帮助主题中描述了边距对象的有趣坐标系。