我正在尝试做一些在 ggplot 中看起来应该相当简单的事情。我怀疑我没有在寻找正确的术语,因此什么也没有出现。基本上我有来自一个数据帧的数据,并在另一个数据帧中映射数据。我希望 facet_wrap 函数在确定适当的比例时忽略地图数据框中的数据。这是一些可重现的代码:
mapdata <- map_data("world")
df1 <- data.frame(category="A", lon=rnorm(20, -160, 3), lat=rnorm(20, 55, 3))
df2 <- data.frame(category="B", lon=rnorm(20, -130, 3), lat=rnorm(20, 52, 3))
df <- rbind(df1, df2)
g <- ggplot() + geom_point(data=df, aes(lon, lat)) + facet_wrap("category", scales="free")
但是现在如果我尝试为每个方面添加一个地图,它会使用两个数据集中的范围。
g + geom_polygon(data=mapdata, aes(x=long, y=lat, group=group))
如何告诉 ggplotdf
在计算限制时仅使用数据框?基本上我想将子图集中在这些点上,但是有一张地图可以显示它们的位置。任何建议将不胜感激。