根据地址或xy坐标创建地图-转换为经纬度吗?

时间:2019-04-08 11:47:34

标签: r coordinates geocoding ggmap r-leaflet

我可能有一个非常简单的问题(我对R很陌生),但是搜索了一段时间之后,我没找到想要的东西。

我需要在R中创建一个地图。最好使用Leaflet软件包,但是我绝对愿意接受其他建议。 我的数据是导致问题的原因。我具有所有点的地址和x y坐标,但是大多数地图制作软件包都需要纬度和经度数据。

有什么方法可以很容易地转换地址或x y坐标吗?

我已经阅读了地理编码功能,但是Google需要API来实现此功能,并且我必须承认我当时迷路了。

数据包含大约50个点,因此最好使用质量转换为经度和纬度的方法。

非常感谢您。

x,y坐标示例

Name     x       y
Point_1  556305  6306381

1 个答案:

答案 0 :(得分:1)

像这样吗?

使用https://epsg.io/?q=denmark

查找crs

样本数据

df <- data.frame( city = "Trinbak", lon = 556305, lat = 6306381 )

代码

library(sf)
library(leaflet)

df.sf <- st_as_sf( df, coords = c("lon", "lat") ) %>%
  st_set_crs( 2198 ) %>%   #set coordinate system used
  st_transform( 4326 )     #transform coordinates to WGS84 coordinates

leaflet() %>% addTiles() %>% addMarkers( data = df.sf )

输出

enter image description here

更新

也许

df.sf <- st_as_sf( df, 
                   coords = c("lon", "lat") ) %>%
  st_set_crs( 23032 ) %>%
  st_transform( 4326 )

更准确吗?

enter image description here