【问题标题】:plot a map using lat and lng coordinates in R在 R 中使用 lat 和 lng 坐标绘制地图
【发布时间】:2022-01-03 19:49:47
【问题描述】:

我的数据集有 4 列分别是 station_name、station_lat、station_lng 和 count。这是我的数据集的示例。

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

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 ggplot2 plot sp r-leaflet


    【解决方案1】:

    向 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()
    
    

    【讨论】:

    • 我收到错误消息“值错误 [[3L]](cond):无法卸载包 'sp' 版本 1.4.5:unloadNamespace(package) 中的错误:命名空间 'sp' 是由“RgoogleMaps”导入,因此无法卸载”。
    • 删除“RgoogleMaps”包并重新启动后,我可以停止此错误。然后安装“sf”包我得到了所需的结果。
    猜你喜欢
    • 1970-01-01
    • 2016-12-22
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2018-02-19
    相关资源
    最近更新 更多