在 rgl 中添加球体

add sphere in rgl

我正在尝试使用 rgl 在 3D 图形中添加一个球体,但我无法获得我想要的东西。 我的数据看起来像这样:

L     a     b    
89.09 -0.78 66.41    
89.41 -0.55 61.08    
89.18 -0.46 61.86

首先我使用 plot3d

绘制我的点
open3d()    
plot3d(data)

然后对于一个特定的点,我想添加一个半径为 1 的球体:

spheres3d(dataforonepoint,radius=1,alpha=0.5)

问题是球体没有使用坐标,根据数据,它实际上看起来不像球体,因为轴不在同一比例尺中。

您需要修正 3 个维度之间的纵横比:

plot3d(data, aspect = F)

来自文档:

aspect: either a logical indicating whether to adjust the aspect ratio, or a new ratio.

G Gamba 适合看起来像球体的球体。

如果你想要一个在 non-isometric 比例下几何正确的球体(这样它看起来就不像球体),你可以使用 ellipse3d() 来绘制它。例如,

data <- cbind(rnorm(10), rnorm(10), 2*rnorm(10))
plot3d(data)
shade3d(ellipse3d(diag(3), centre = data[1,], t = 1), alpha = 0.5)