我有一个带有推文坐标的数据框,例如:
library(ggplot2)
df <- data.frame(long = c(-58.1, -58.2, -58.3, -58.4, -58.5, -55),
lat = c(-34.1, -34.2, -34.3, -34.4, -34.5, -25))
我想绘制布宜诺斯艾利斯都会区,称为 AMBA。它由区域定义:经度:(-58,-59)纬度:(-34,-35)
我的数据框中有一排在 AMBA 区域之外。(对问题(2)很重要)
这是我尝试过的:
加载阿根廷地图信息
con <- url("http://gadm.org/data/rda/ARG_adm2.RData")
print(load(con))
close(con)
ggmap <- fortify(gadm, region = "NAME_2")
为情节设置限制以仅包括 AMBA
lim <- data.frame(lon = c(-59, -58), lat = c(-35, -34))
阴谋
ggplot(data=ggmap, aes(x=long, y=lat)) +
scale_x_continuous(limits = c(-59,-58)) +
scale_y_continuous(limits = c(-35,-34)) +
geom_polygon(data = ggmap, fill = "grey80", aes(group=group)) +
geom_path(color="white",aes(group=group)) +
geom_point(data = df, aes(x = lon, y = lat, colour = "red"), alpha = 30/100)
问题:
- 主要问题是外部国家的政治边界区域并不完整,因此地图看起来很奇怪。有办法解决这个问题吗?
- 我应该对数据框进行子集化以将观察结果保留在 AMBA 区域内,还是可以直接绘制图并直接选择我感兴趣的区域。我相信这就是 scale_x_continuous(limits =...) 所做的。