将对象的坐标添加到 R 中的地图中

问题描述 投票:0回答:1

我有一个包含船舶名称及其纬度和经度的数据框:

d <- data.frame(
   object = c("TIGAN", "KETLIN", "VOSKHOD"),
   long = c(59.38163, 59.42280, 59.90143),
   lat = c(22.21518, 22.29112, 27.58729))
 class(d)

我想在地图上绘制这些点。我已经从 shp 对象创建了一个地图。



 library(sf)
 map <- read_sf("C:\\Julia\\Estonia_shapefile\\ee_10km.shp")
 class(map)
 print(map)
 plot(map)
 library(ggplot2)
   ggplot(st_union(map, by_feature = FALSE) %>% st_sf()) + geom_sf()

如何在地图上添加此对象?

r ggplot2 shapefile
1个回答
0
投票

你会做这样的事情:

library(sf)
library(ggplot2)
library(dplyr)
d <- data.frame(
  object = c("TIGAN", "KETLIN", "VOSKHOD"),
  long = c(59.38163, 59.42280, 59.90143),
  lat = c(22.21518, 22.29112, 27.58729)) %>% 
  st_as_sf(coords = c("long", "lat"), crs = 4326)

map <- read_sf("C:\\Julia\\Estonia_shapefile\\ee_10km.shp")

ggplot() + 
  geom_sf(data = d, aes(color = object)) +
  geom_sf(data = map) +
  coord_sf()
© www.soinside.com 2019 - 2024. All rights reserved.