Где я могу найти данные о границах страны в текстовом формате? (XML, JSON, CSV и т. Д.)

12

Я пытаюсь получить некоторые данные, представляющие границы всех стран мира. Эти данные не должны быть очень точными, они должны нарисовать страны на экране компьютера. Я провел небольшое исследование и продолжаю натыкаться на двоичные форматы, чтобы эти данные открывались в разных программах, а что нет. Вот пример того, что было бы хорошим ресурсом, но непригодным для меня.

Я не хочу писать парсер двоичного формата, если это возможно. Итак, мой вопрос состоит из двух частей:

  • Есть ли ресурсы для упрощенных границ страны в виде простого текста? (XML, JSON, CSV и т. Д.)
  • Если нет, есть ли программы, в которые я мог бы экспортировать двоичные данные, найденные по всей сети, в этих форматах?
Xeon06
источник
2
"Удобочитаемый" = "карта"!
whuber
@whuber, что я имел в виду, был формат в тексте Unicode :)
Xeon06

Ответы:

22

Я бы предложил скачать и установить QGIS . Затем вы можете открыть файл, на который вы ссылаетесь, и экспортировать данные в различные форматы.

Наиболее распространенный формат для пространственных данных этого типа - это shapefileфайл, с которым вы связались (TM_WORLD_BORDERS_SIMPL-0.2.zip). Причина в том, что это zip-файл, состоит в том, что есть несколько связанных файлов с шейп-файлом, и их сжатие в папку сохраняет их вместе.

Когда вы загрузите и установите QGIS, нажмите на этот значок введите описание изображения здесь. Затем перейдите в папку, в которую вы распаковали TM_WORLD_BORDERS_SIMPL-0.2.zipфайл, и добавьте файл TM_WORLD_BORDERS_SIMPL-0.2.shp. Затем вы должны увидеть границы страны на вашем экране.

Затем щелкните правой кнопкой мыши на имени файла в левой части экрана. Там будет вариант, save-asи вы можете выбрать различные форматы (на моем скриншоте я выбираю geojson).

введите описание изображения здесь

djq
источник
Спасибо за ответ! Собираюсь попробовать, как только я вернусь домой и вернусь к вам
Xeon06
Отлично - рад, что это сработало.
DJQ
8

Мне нравится ответ @celenius; однако другой вариант - экспортировать набор данных World Borders в CSV с помощью ogr2ogr . Я только что скачал ваш предпочитаемый набор данных и запустил эту команду с помощью ogr2ogr - заметьте, что ваш скрипт должен быть одной строкой без разрывов строк. Я считаю, что их проще всего писать в блокноте с включенным wordwrap, затем я копирую их в свой терминал ogr2ogr:

ogr2ogr -f "CSV" "E:\4_GIS\01_tutorials\worldborders\World_wkt"
   "E:\4_GIS\01_tutorials\worldborders\TM_WORLD_BORDERS-0.3.shp" -lco 
   "GEOMETRY=AS_WKT" -lco "LINEFORMAT=CRLF" -lco "SEPARATOR=SEMICOLON"

(CAVEAT: копирование / вставка моего сценария ogr из Интернета и в ваш терминал не будет работать, потому что на сайте будут вводиться разрывы строк и замены символов ASCII для двойных кавычек. В результате OGR будет иметь проблемы с чтением сценария. По этой причине Я рекомендую сначала набрать настроенный скрипт в блокноте или прямо в терминале.)

OGR создаст World_wktкаталог до того, как выполнит перевод формата файла, поэтому не создавайте этот каталог до запуска вашего скрипта, иначе вы получите ошибку.

Вот фрагмент результатов, которые я получил:

WKT;FIPS;ISO2;ISO3;UN;NAME;AREA;POP2005;REGION;SUBREGION;LON;LAT
"MULTIPOLYGON (((-61.686668 17.024441000000138,-61.73806 16.98971
"POLYGON ((2.96361 36.802216,2.981389 36.806938,3.001111 36.80971
"MULTIPOLYGON (((45.083321 39.768044000000145,45.266388 39.611107
"POLYGON ((19.436214 41.021065,19.450554 41.059998,19.513611 41.2
"MULTIPOLYGON (((45.573051000000135 40.632488,45.528881 40.606098
"MULTIPOLYGON (((11.750832 -16.75528,11.775 -16.804726,11.77 -16.
"MULTIPOLYGON (((-170.542511 -14.2975,-170.546112 -14.29861,-170.

Это фрагмент общеизвестного текста (WKT). Очень удобочитаемый, но эти строки продолжаются вправо очень долго, поэтому я не хотел копировать полные записи. :)

Если вы просто хотите загрузить созданный мной набор данных CSV, я разместил его здесь , но я бы посоветовал вам попробовать этот метод для себя. Если вы заинтересовались и хотите получить больше информации, я написал несколько недель назад в своем блоге тематическую статью , в которой вы можете найти более подробные сведения.

elrobis
источник
0

Я бы посоветовал загрузить Google Планета Земля и просмотреть различные слои в расширенном представлении слоев, щелкнув каждый слой и развернув дерево, чтобы включить границы и отключить все, что вам действительно не нужно, поскольку это замедляет работу программы. слишком много открытых и запущенных слоев. Это 3D и очень подробный и настраиваемый, а также точный. Вы даже можете использовать симулятор полета и наслаждаться поездкой.

rgv_xroworz_54
источник
Спасибо, но мне нужны данные границ для его обработки.
Xeon06