Получение полигонов всех стран и подразделений ISO-3166-2


12

Чтобы выполнить обратный поиск геокодирования, чтобы найти страну (как ISO-3166-1) и подразделение (как ISO-3166-2) для заданных координат, я ищу способ получить все полигоны всех стран и их подразделений.

Обратный поиск геокодирования с помощью Карт Google или других служб либо не всегда возвращает страну и подразделение (Карты Google), либо иногда они неверны (geonames.org). Насколько я понимаю, в данных openstreetmap доступны все страны и подразделения, но я не знаю, как только извлечь полигоны - никаких картографических данных, точек интереса или городов не требуется, только контуры всех подразделений с данной страной. и коды подразделения. Затем я могу проверить, находится ли заданная точка в любом заданном многоугольнике или рядом с ним.

Кто-нибудь знает, как получить эти данные из данных openstreetmap, или есть какой-либо другой источник этих данных?


Возможно, этот пост может помочь: Полный список кодов стран ISO ALPHA-2 и ISO ALPHA-3
Джозеф

data.gouv.fr/en/search/?q=D%C3%A9partement и Википедия имеет информацию из ISO 3166-2. Вот общая тема (на французском): fr.wikipedia.org/wiki/Codes_g%C3%A9ographiques_de_la_France
mkennedy

ISO 3166-2 - это не область, а название (или, более конкретно, как управляются административные подразделения). Вы ищете области или названия?
BradHards

Площадь Я хотел бы получить координаты области, чтобы нарисовать их на карте или листе.
Ger

gadm.org/country , вероятно, поможет. Я бы пошел с shapefile в качестве отправной точки, если вы не знаете, что вам нужно что-то еще.
BradHards

Ответы:


6

Этот сайт может иметь то, что вы ищете:


Я проверил gadm и смог его протестировать - предоставленные данные действительно хороши, и самое главное, коды ISO 3166-2 содержатся (обычно в столбце hasc_1, иногда в столбце hasc_2). Некоторая ручная обработка все еще необходима в зависимости от того, какие детали нужны, но исходный материал пока выглядит великолепно.
Икито

@iquito: К вашему сведению, эти значения в столбцах HASC_ * не соответствуют ISO 3166, это совершенно другое .
Crescent Fresh

1

Поскольку вы запросили, как извлечь эти данные из openstreetmap: теоретически вы можете использовать XAPI для сопоставления описаний границ . Например, используя такой запрос: (предупреждение, это займет много времени, поэтому я не форматирую это как ссылку!)

www.overpass-api.de/api/xapi?way[bbox=2,49,7.5,54][boundary=administrative][admin_level=2]

Результатом будет список полигонов, в данном случае обозначающих границы стран Бенилюкса. Возможно, вам придется повторить это для других ограничивающих рамок, возможно, с перекрытием. И для других уровней. Много работы. Вы хотели бы сценарий для этого.

Или загрузите Planet.osm и просто используйте подходящие библиотеки OSM или инструменты XML для локального извлечения соответствующих данных.

Насколько я могу судить, все это будет происходить без единообразных идентификаторов ISO-3166-2 просто потому, что этот стандарт не доступен бесплатно.


1

Вы можете найти сценарий, вдохновленный ответом MvG, и несколько примеров здесь: https://github.com/laem/regions-topojson

К сожалению, не все административные отношения с геонами помечены iso-3166-2 ...


0

Другие источники включают границы второго административного уровня (SALB) и DIVA-GIS .


-1

Вы можете загрузить полный набор границ стран с административными подразделениями первого уровня для большинства стран из GADM здесь: https://gadm.org/download_world.html


Я хотел бы знать, почему этот ответ был отклонен, учитывая, что главный вопрос: «Кто-нибудь знает, как извлечь эти данные из данных openstreetmap, или есть какой-либо другой источник этих данных?» Я имею в виду, какой ответ может быть лучше, чем предоставить ссылку непосредственно на точные данные, которые они хотят?
Стив Беннетт

вероятно, причина может быть в том, что первый (верхний) ответ соответствует данным GADM
Николай Козырь
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.