gpt4 book ai didi

r - 使用 geom_polygon 绘制 map 的地理边界不完整 - ggplot2

转载 作者:行者123 更新时间:2023-12-04 07:39:22 24 4
gpt4 key购买 nike

我有一个带有推文坐标的数据框,例如:

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)很重要)

这是我尝试过的:

加载阿根廷 map 信息
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)

问题:
  • 主要问题是外部国家的政治边界区域不完整,因此 map 看起来很奇怪。有没有办法解决这个问题?
  • 我应该对数据框进行子集化以将观察结果保留在 AMBA 区域内,还是可以直接绘制绘图并直接选择我感兴趣的区域。我相信这就是 scale_x_continuous(limits =...) 所做的。
  • 最佳答案

    试试 coord_map而不是 scale_x_continuous/scale_y_continuous .
    在坐标系上设置限制将缩放绘图(就像您用放大镜查看它一样),并且不会像在比例上设置限制那样更改基础数据。

    ggplot(data=ggmap, aes(x=long, y=lat)) +
    geom_polygon(data=ggmap, fill="grey80", aes(group=group)) +
    geom_path(color="white",aes(group=group)) +
    geom_point(data=df, aes(x=long, y=lat), colour="red", alpha=30/100) +
    coord_map(xlim=-c(59, 58), ylim=-c(35,34))

    R Plot

    关于r - 使用 geom_polygon 绘制 map 的地理边界不完整 - ggplot2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17644262/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com