[R] Calculate directions between points
Wanja Mathar
maenner_wg at yahoo.de
Sun Mar 29 14:48:19 CEST 2009
Thank you! I managed it with this function - for a data fram with x and y coordinates:
anglefun<-function(x,y,unit="degrees") {x.new<-outer(x,x,"-");
y.new<-outer(y,y,"-");angles<-atan2(x.new,y.new);diag(angles)<-NA;if(unit
== "degrees")
return(180*angles/pi)
if (unit == "radians")
return(angles)}
returns a matrix with the directions in degrees or radians and sets the angle between the same point to NA
Emmanuel Charpentier schrieb:
Le samedi 28 mars 2009 à 16:06 +0000, Wanja Mathar a écrit :
Hi everyone,
i have a matrix of points and want to calculate the direction and length of each vector between the points.
I can easily calculate the length with dist(testdata), but is their a function that returns a matrix of the direction of the vectors between points (angles 0-360°)?
testdata <- matrix(1:8, nrow= ncol=2,
dimnames=st(c("A","B","C","D"), c("x","y"))
?atan2 ; ?outer
Emmanuel Charpentier
More information about the R-help
mailing list