如何生成显示点的方向角的图?

机器算法验证 r 数据可视化 循环统计
2022-03-11 05:33:12

我希望能够比较一群河马中邻居的角度。我有 x 和 y 坐标以及它们所面对的角度的数据(使用imageJ,角度在 -180 到 180 之间,0 是穿过图像中间的水平直线)。我已经绘制了g(r)功能来查看我的河马是否“喜欢”将自己定向到附近的个体,但我希望能够使用R.

任何帮助将不胜感激,我还没有真正R识字!

2个回答

听起来数据由(x,y)坐标和角度的向量组成。让我们模拟一些作为例子:

set.seed(43)
x <- rnorm(50)
y <- rnorm(50)
angles <- runif(50, min=-pi, max=pi)

绘制位置:

plot(x, y, pch=19, cex=0.8, col="Blue")

添加箭头以显示这些点的方向:

length <- 0.2
arrows(x, y, x1=x+length*cos(angles), y1=y+length*sin(angles), 
       length=0.05, col="Gray")

河马

补充@whuber的答案。R 包中的ms.arrowsandmy.symbols函数TeachingDemos可能很有趣。他们还会绘制箭头,但您可以直接给出角度,而不是计算正弦和余弦,如果您希望箭头以点为中心而不是从点开始,它也会变得更容易。