我有 2 个地理空间数据集 - 一个用于识别医院并识别在这些医院内、附近或远离这些医院进行的程序。 我使用 ggplot 创建一个地图,其中包含显示所有医院和所有已完成程序的点。 关键是要可视化与医院相关的程序有多接近。 因此,我试图在每个医院地理坐标周围生成一个半径为1Km的圆,看看里面有多少个手术点。 问题是当我尝试这样做时,我似乎无法让圆只显示为边框并在内部透明(即我希望半径仅为 1 公里的圆形轮廓,这样我仍然可以看到落在所述半径内的程序点(。 我怎样才能完成此操作?我当前的代码如下。 谢谢!
ggplot() +
geom_polygon(data=map_area.df, aes(x=long, y=lat, group=group)) +
geom_point(data=procedures, aes(x=long, y=lat), size=.01) + scale_color_viridis() +
geom_point(data=hospitals, aes(x=long, y=lat), size = .02, color="red") +
geom_circle(aes(x0=longitude, y0=latitude, r = circles), data= hospitals)
+ coord_equal()
美学"填充"在 ggplot 中用于此目的,但您似乎没有将其设置为任何内容。你能发布一个问题的例子吗?在下面的示例代码中,我确实得到了只有圆形轮廓的透明圆圈:
library(ggplot2)
library(ggforce)
circles <- data.frame(
x0 = rep(1:3, 3),
y0 = rep(1:3, each = 3),
r = seq(0.1, 1, length.out = 9)
)
ggplot() +
geom_circle(aes(x0 = x0, y0 = y0, r = r), data = circles) +
coord_fixed()