R 尝试根据点之间的距离绘制圆

R 尝试根据点之间的距离绘制圆,r,geometry,euclidean-distance,R,Geometry,Euclidean Distance,我试图画一些圆,我希望它们能与一些点相交,唉 library(maptools) library(plotrix) xy <- matrix(runif(20, min = -100, max = 100), ncol = 2) distance <- spDistsN1(xy, xy[1, ]) plot(0,0, xlim = c(-100, 100), ylim = c(-100, 100), type = "n") points(data.frame(xy)) points(

我试图画一些圆,我希望它们能与一些点相交,唉

library(maptools)
library(plotrix)
xy <- matrix(runif(20, min = -100, max = 100), ncol = 2)
distance <- spDistsN1(xy, xy[1, ])
plot(0,0, xlim = c(-100, 100), ylim = c(-100, 100), type = "n")
points(data.frame(xy))
points(xy[1, 1], xy[1, 2], pch = 16)
draw.circle(xy[1, 1], xy[1, 2], radius = distance)
库(maptools)
库(plotrix)

xy这是一个古老的纵横比问题,当人们绘制椭圆、圆等时,这个问题会不时出现


MASS::eqscplot
代替
plot
edit:或使用
asp=1
:参见
?par
)似乎可以解决这个问题。

添加
asp=1
只能在(如本例中)x和y范围相同的情况下起作用,
eqscplot
应该更一般一些。我注意到的唯一区别是,当使用
asp=1
时,比率会保持不变(图像按比例增长/收缩),而在
eqscplot
中,如果调整窗口大小,它会变形。很好的发现,谢谢!