我正在尝试在纽约州地图上绘制数据。我正在使用map_data代码。但是,如果你看多边形,它显示了实际上不属于纽约州的额外部分?任何想法如何在地图数据上应用过滤器来删除它?
ny <- map_data("state", region="new york")
s1 <- ggplot() + geom_polygon(data=ny, aes(x=long, y=lat))
s2 <- ggplot() + geom_point(data=ny, aes(x=long, y=lat))
grid.arrange(s1, s2, ncol=2)
答案 0 :(得分:2)
状态实际上由多个未连接的多边形组成。你只需要告诉ggplot哪些点与哪些组相关。这是通过将您的数据映射到group
的{{1}}参数来完成的。请参阅文档here,尽管如果他们有地图示例会更好。
那么你怎么知道哪些群体与哪些群体有关? aes()
返回的数据框包含map_data()
列。参见:
group
要正确绘制地图,请使用:
head(ny)
ny$group