我一直在使用rgl
绘制球体,但现在我需要绘制椭圆体。
该套餐包括ellipse3d
;然而,这似乎是为了将椭球拟合到数据,使用矩阵和我不太擅长的东西。
我想要的是一种使用中心坐标和每个方向的刻度以类似于球体的方式绘制椭球的简单方法。任何人都可以帮助我吗?
答案 0 :(得分:3)
如果你不需要围绕轴旋转椭圆,那么你可以使用x
的对角矩阵(这绘制一个球体,并定义虚拟"轴"沿x,y,z轴)并使用centre
和scale
参数来移动位置并更改比例。
plot3d(ellipse3d(diag(3),centre=c(1,2,4),scale=c(1,2,5)))
答案 1 :(得分:2)
我的cda package中有一个,
library(cda)
library(rgl)
## single ellipsoid
plot3d(rgl.ellipsoid(a=2,b=1,c=5))
## multiple ellipsoids, translated and rotated
cl <- helix(0.5, 1, 36, delta=pi/6, n.smooth=1e3)
sizes <- equal_sizes(0.04,0.02,0.02,NROW(cl$positions))
rgl.ellipsoids(cl$positions, sizes, cl$angles, col="gold")