我有三个[1:360,2]表的输入,包括三个平面X,Y,Z的测量,每个平面具有1:360度极坐标。其中一个表格就是这里的图像的一个很好的例子。 image example
我想打印这三个"圈"作为不同的平面圆(x,y,z),如下面的链接所示。 click here
我昨晚写了一个关于rgl库的小例子(但也许 我应该"移动"这个代码通过将极坐标转换为笛卡尔坐标来绘制这三个圆,为简单起见假设所有三个圆的半径都是1.您可以复制下面的粘贴,看看我的意思
require("rgls")
degreeToRadian<-function(degree){
return (0.01745329252*degree)
}
turnPolarToX<-function(Amplitude,Coordinate){
return (Amplitude*cos(degreeToRadian(Coordinate)))
}
turnPolarToY<-function(Amplitude,Coordinate){
return (Amplitude*sin(degreeToRadian(Coordinate)))
}
# first circle
X1<-turnPolarToX(1,1:360)
Y1<-turnPolarToY(1,1:360)
Z1<-rep(0,360)
# second circle
X2<-turnPolarToX(1,1:360)
Y2<-rep(0,360)
Z2<-turnPolarToY(1,1:360)
# third circle
X3<-rep(0,360)
Y3<-turnPolarToX(1,1:360)
Z3<-turnPolarToY(1,1:360)
Min<-min(X1,Y1,Z1,X2,Y2,Z2,X3,Y3,Z3)
Max<-max(X1,Y1,Z1,X2,Y2,Z2,X3,Y3,Z3)
plot3d(X1,Y1,Z1,xlim=c(Min,Max),ylim=c(Min,Max),zlim=c(Min,Max),box=TRUE,axe=FALSE,add=TRUE,col="red",type="l")
plot3d(X2,Y2,Z2,xlim=c(Min,Max),ylim=c(Min,Max),zlim=c(Min,Max),box=TRUE,axe=FALSE,add=TRUE,col="green",type="l")
plot3d(X3,Y3,Z3,xlim=c(Min,Max),ylim=c(Min,Max),zlim=c(Min,Max),box=TRUE,axe=TRUE,add=FALSE,col="blue",type="l")
我现在遇到的问题是轴包含用户无法理解的笛卡尔坐标值。我正在考虑如何删除笛卡尔坐标并使用考虑每个向量的振幅值(极坐标的初始信息)而不是x,y值的颜色。
我想提前感谢你的回复 问候 亚历