2014-11-05 102 views
0

我一直在使用rgl绘制球体,但现在我需要绘制椭球体。 该套餐包括​​;然而,这似乎是用椭球体拟合数据,使用矩阵和我不擅长的东西。在rgl中绘制椭球体/扁球体

我想要的是一种简单的绘制椭球体的方法,以类似于球体的方式,使用中心坐标和每个方向上的比例。谁能帮我吗?

回答

3

如果不需要围绕轴旋转的椭圆,那么您可以使用x的对角矩阵(这绘制了一个球体,并定义了沿着x,y,z轴的虚拟“轴”)和使用centrescale参数来移动位置并更改比例。

plot3d(ellipse3d(diag(3),centre=c(1,2,4),scale=c(1,2,5))) 
+0

这只是一种简单的我是后 - 非常感谢!但是,是否也可以改变轴上的比例,缩小一点? – Sam 2014-11-05 13:27:19

2

有一个在我的cda package

library(cda) 
library(rgl) 
## single ellipsoid 
plot3d(rgl.ellipsoid(a=2,b=1,c=5)) 

enter image description here

## 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") 

enter image description here