R-反向地理编码因某些坐标而失败,但在同一国家 /地区的其他坐标却没有 我正在尝试使用R倒出14000个坐标的列表。我首先从tmaptools软件包中使用了Rev_geocode_osm函数,该软件包从OpenStreetView获取人类可读数据。那是

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

df <- google_reverse_geocode(location = c(60.33153798,11.30441017), result_type = c("street_address", "postal_code"), location_type = "rooftop", key = api_key, simplify = TRUE) df$results$address_components

返回预期:

[[1]] long_name short_name types 1 6A 6A street_number 2 Brennhøgda Brennhøgda route 3 Eidsvoll Eidsvoll postal_town 4 Eidsvoll Eidsvoll administrative_area_level_2, political 5 Akershus Akershus administrative_area_level_1, political 6 Norway NO country, political 7 2080 2080 postal_code [[2]] long_name short_name types 1 10 10 street_number 2 Brennhøgda Brennhøgda route 3 Eidsvoll Eidsvoll postal_town 4 Eidsvoll Eidsvoll administrative_area_level_2, political 5 Akershus Akershus administrative_area_level_1, political 6 Norway NO country, political 7 2080 2080 postal_code [[3]] long_name short_name types 1 11 11 street_number 2 Brennsletta Brennsletta route 3 Eidsvoll Eidsvoll postal_town 4 Eidsvoll Eidsvoll administrative_area_level_2, political 5 Akershus Akershus administrative_area_level_1, political 6 Norway NO country, political 7 2080 2080 postal_code
任何帮助/指示都将不胜感激。
    

基于您提供的示例,我看不出

opentreetMap

在哪里失败。访问API的功能无URL编码和检查
coords2address = \(lon, lat) { 
  url = "https://nominatim.openstreetmap.org/search?q=" 
  enc = paste0(url, lon, '%2C+', lat, '&format=json') 
  r = rjson::fromJSON(file = enc)
  if(length(r)) lapply(r, \(i) i['display_name']) 
}

没有失败

> coords2address(58.612825, 8.829250) [[1]] [[1]]$display_name [1] "Ramberget, Båslandsveien, Tvedestrand, Agder, 4934, Norge"
这显然与

> tmaptools::rev_geocode_OSM(8.829250, 58.612825)[[1]]$name [1] "Ramberget, Båslandsveien, Tvedestrand, Agder, 4934, Norge"

r reverse-geocoding
1个回答
0
投票

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.