gpt4 book ai didi

r - 在 r 中添加美国和加拿大之间的粗体边界。

转载 作者:行者123 更新时间:2023-12-01 13:35:52 24 4
gpt4 key购买 nike

我目前正在处理地理数据以绘制 map 。我有两个不同的 shapefile。我想要做的是在加拿大和美国之间添加一个大胆的边界,但我不知道该怎么做。

# Load packages ----------------------------------------------------------------
library(dplyr)
library(readr)
library(ggplot2)
library(rgdal)
library(ggmap)

# Load data --------------------------------------------------------------------
canada <- readOGR(dsn = "00-raw/gcd_000b11a_e/", layer = "canada") %>% fortify()
us <- readOGR(dsn = "00-raw/usmaps/us/", layer = "co99_d90") %>% fortify()

# Maps -------------------------------------------------------------------------
gg <- ggplot() + geom_map(data=canada, map=canada,
aes(long, lat, map_id=id),
size=0.1, fill=NA, color = "black") +
coord_map("stereographic", xlim=c(-120, -60)) +
geom_map(data=us, map=us,
aes(long, lat, map_id=id),
size=0.1, fill=NA, color = "black") +
theme_nothing(legend = T)

enter image description here

最佳答案

使用 sf 包中的地理空间统计函数来查找边界“形状”。然后绘制它。

library(sf)
border <- st_intersection(us, canada)
gg + geom_map(data=border, map=us,
aes(long, lat,
size=0.1, fill=NA, color = "red")

关于r - 在 r 中添加美国和加拿大之间的粗体边界。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43354631/

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