在 R 中使用 lat 和 lng 坐标绘制地图

plot a map using lat and lng coordinates in R

我的数据集有 4 列,分别是 station_name、station_lat、station_lng,count.This 是我的数据集的示例。

站 <- data.frame(站 = c("StreeterDr", "MichiganAve", "WellsSt"), lat = c(41.89228, 41.90096, 41.91213), lng = c(-87.61204, - 87.62378, -87.63466), 计数 = c(2300, 5678, 3452))

我想在地图上绘制这些坐标。参考之前关于此主题的 post 我尝试了这段代码。但它不起作用。

install.packages(c("leaflet", "sp")) 
library(leaflet)
library(leaflet)

lon <- stations$start_lng
lat <- stations$start_lat
df <- as.data.frame(cbind(lon,lat))

coordinates(df) <- ~lon+lat
leaflet(df) %>% addMarkers() %>% addTiles()

向 R 说明哪些列是 xy 是不够的。您还需要将 data.table 转换为 sf 对象并说明您使用的地理坐标系。

#object with your data


#state which columns are lon and lat
coordinates(dt) <- ~lng+lat

#convert to sf object
dt <- st_as_sf(dt)

#set crs (WSG1984 seems to be used here)
st_crs(dt) <- 4326

#create leaflet
leaflet(dt) %>% addMarkers() %>% addTiles()