Прямое и обратное геокодирование
Содержание:
- Параметры МСК-16
- Астрономические координаты
- Что такое географическая широта и долгота объекта на карте: объяснение
- Понятие о широте
- Запись полученных координат
- Географическая карта мира с широтой и долготой: фото
- Определение координат на виртуальной карте Google
- Географическая широта и долгота
- Какие существуют сервисы для решения этой задачи?
- Как рассчитать долготу?
- Примеры обратного геокодирования
- Тарифы и особенности сервисов
- Как определить долготу и широту?
- Максимальное значение координат
- Примеры данных, которые дают разные сервисы
- Выводы
Параметры МСК-16
МСК-16 разбита на три 3-ех градусные зоны, по которым можно предложить два решения: расчетные и с учетом ГОСТ 51794-2008. Ниже приведен формат для использования в файле проекций ГИС MapInfo.
Расчетные
ГОСТ 51794-2008
Распределение кадастровых районов по зонам следующее:
- Алексеевский (16:05), Алькеевский (16:06), Апастовский (16:08), Арский (16:09), Атнинский (16:10), Балтасинский (16:12), Буинский (16:14), Верхнеуслонский (16:15), Высокогорский (16:16), Дрожжановский (16:17), Зеленодольский (16:20), Кайбицкий (16:21), Камско-Устьинский (16:22), Лаишевский (16:24), Пестречинский (16:33), Рыбно-Слободский (16:34), Спасский (16:37), Тетюшский (16:38), Тюлячинский (16:40), Зеленодольский городской (16:49), Казанский (16:50) — зона 1;
- Агрызский (16:01), Азнакаевский (16:02), Аксубаевский (16:03), Альметьевский (16:07), Бавлинский (16:11), Бугульминский (16:13), Елабужский (16:18), Заинский (16:19), Кукморский (16:23), Лениногорский (16:25), Мамадышский (16:26), Менделеевский (16:27), Мензелинский (16:28), Муслюмовский (16:29), Нижнекамский (16:30), Новошешминский (16:31), Нурлатский (16:32), Сабинский (16:35), Сармановский (16:36), Тукаевский (16:39), Черемшанский (16:41), Чистопольский (16:42), Ютазинский (16:43), Азнакаевкий городской (16:44), Альметьевский городской (16:45), Бугульминский городской (16:46), Елабужский городской (16:47), Заинский городской (16:48), Лениногорский городской (16:51), Набережно-Челнинский городской (16:52), Нижнекамский городской (16:53), Чистопольский городской (16:54), Бавлинский городской (16:55), Нурлатский городской (16:56) — зона 2;
- Актанышский (16:04) — зона 3.
ГИС Панорама
В ГИС Панорама версий 12 и выше применяются параметры по ГОСТ 51794-2008, а в 11 версии и ниже расчетные параметры. Подключить параметры МСК-16 можно через файл «МСК Субъектов РФ.xml». Как устанавливать параметры МСК в ГИС Панорама смотрите в видео, а пересчитывать в другие системы координат читайте в статье «Перевод данных МСК в другую систему координат».
https://youtube.com/watch?v=_aCVO34yXGs%3F
ГИС Мапинфо
В ГИС Мапинфо применяются параметры по ГОСТ 51794-2008. Подключить параметры МСК-16 можно через включение их в файле «MAPINFO.PRJ» и с последующим их установлением при создании карты. Как это сделать можно посмотреть в следующем видео.
https://youtube.com/watch?v=znb1IZc2VCc%3F
ГИС QGIS
Для вставки параметров в QGIS необходимо их немного преобразовать в формат «PROJ.4». Прописываются параметры в пользовательских системах координат. Ниже приведены параметры с учетом ГОСТ 51794-2008.
МСК-16 зона 1
МСК-16 зона 2
МСК-16 зона 3
В нижеследующем видео показано, как можно прописать параметры местной системы координат в QGIS.
https://youtube.com/watch?v=jW-aAfINj34%3F
Астрономические координаты
Как определять широту и долготу точки с большой точностью – эта задача становится все более сложной по мере увеличения масштаба. Дело в том, что расхождения между реальной формой Земли и ее сферической моделью проявляются гораздо явственнее на мелко масштабированных картах. Для таких случаев применяется астрономическая система координат, учитывающая настоящую форму планеты.
В связи с тем, что планета вращается с достаточно большой скоростью, ее внутреннее вещество в виде жидкой мантии испытывает на себе центробежную силу. Она вытягивает планету у экватора и стягивает у полюсов. Поэтому радиус Земли в этих 2-х точках различен: 6357 км от центра планеты до полюса и 6378 км от центра до экватора.
Здесь заключается главное отличие астрономической системы координат от сферической. В первой линия — которую в этой системе называют отвесной линией — от точки параллельна направлению силы тяжести и перпендикулярна земной поверхности, а во второй – к центру планеты.
Для определения отвесной линии применяются астрономические наблюдения за небесной сферой с помощью специальных инструментов либо математические вычисления на основе этих наблюдений. Для каждого региона она будет различна, так как вещество внутри планеты распределено неравномерно.
Что такое географическая широта и долгота объекта на карте: объяснение
Что такое географическая широта и долгота объекта на карте: объяснение Изучением широты и долготы занимались еще наши предки. Уже тогда были карты мира, не похожие на современные, но с их помощью тоже можно определить, где находится и какой объект. Простое объяснение, что такое географическая широта и долгота объекта на карте:
Широта — это координатное значение в системе сферических чисел, которая определяет точку на поверхности нашей планеты относительно экватора.
- Если объекты находятся в северном полушарии, то географическую широту называют положительной, если в южном — отрицательной.
- Южная широта — объект движется от экватора по направлению к Северному полюсу.
- Северная широта — объект движется по направлению к Южному полюсу от экватора.
- На карте широты — это линии, параллельные друг другу. Расстояние между этими линиями измеряется в градусах, минутах, секундах. Один градус — 60 минут, а одна минута — 60 секунд.
- Экватор — нулевая широта.
Долгота — это координатная величина, которая определяет нахождение объекта относительно нулевого меридиана.
- Такая координата позволяет узнать местоположение объекта относительно запада и востока.
- Линии долготы — это меридианы. Они расположены перпендикулярно экватору.
- Нулевая точка отсчета долготы в географии — это Гринвичская лаборатория, которая находится на востоке Лондона. Эту линию долготы принято называть Гринвичский меридиан.
- Объекты, которые находятся на востоке от Гринвичского меридиана — это область восточной долготы, а на западе — область западной долготы.
- Показатели восточной долготы считаются положительными, а показатели западной — отрицательными.
С помощью меридиана определяется такое направление, как север-юг, и наоборот.
Понятие о широте
Если соединить линией точки, находящиеся на равном расстоянии от полюса, то получится параллель. Такие параллели могут быть продолжены все дальше и дальше от одного полюса по направлению к другому. При этом их длина по мере удаления будет расти, так как будет увеличиваться плоскость, описываемая ими.
На определенном расстоянии, когда параллель будет удалена от обоих полюсов на равное расстояние, она будет иметь максимальную длину. Эта параллель носит название экватор, и она ограничивает плоскость, которая называется экваториальной.
Плоский двугранный угол между этой плоскостью и параллелью, на которой расположен объект, получил название географическая широта. Чем меньше этот угол, тем ближе находится рассматриваемая точка к линии экватора. На самом экваторе географическая широта будет равняться нулю.
Параллели расположены по обе стороны от нее, и широта принимает положительное или отрицательное значение в зависимости от того, в каком полушарии находится объект.
Запись полученных координат
Запись в классическом виде, принятом в русскоязычной литературе, ведется на русском языке. Для того, чтобы отделить друг от друга единицы измерения, их принято обозначать надстрочными знаками: градусы знаком «0», минуты знаком «’», а секунды знаком «»».
При этом названия полушарий, а также широт и долгот пишутся сокращенно, записывается только первая их буква. Например, координаты Москвы: 55°45′21″ с. ш. 37°37′04″ в. д. В этом формате слова «широта» и «долгота» вообще не пишутся, а полушария записываются по первой букве их английского варианта: North (север), South (юг), West (запад), East (восток).
В зависимости от вида записи, широты и долготы могут принимать и отрицательные значения без указания названия полушария: положительными являются северное полушарие для широты и восточное для долготы. Остальные – со знаком минус.
Помимо всего вышеописанного, сама запись координат существует в нескольких форматах:
- В виде десятичной дроби с указанием только градусов.
- В виде десятичной дроби с указанием только градусов и минут
- В виде десятичной дроби с указанием градусов, минут и секунд.
Запись во всех этих форматах координат Москвы буде выглядеть следующим образом:
- 55,755831°, 37,617673°
- 55°45.35′N, 37°37.06′E
- 55°45′21″N, 37°37′4″E
Как видно из примера, целые значения отделяются от десятичных точкой. Для того, чтобы пересчитать координаты в другом формате, нужно разделить минуты на 60, а секунды на 3600, для записи только градусов, или умножить для записи полного формата.
На просторах Всемирной сети существует огромное количество сервисов, на которых этот пересчет автоматизирован.
Развитие международного сообщения было бы невозможным без точного определения своего местоположения (широты и долготы). В современную эпоху это позволило даже рядовым пользователям уверенно прокладывать свой маршрут в неизвестной местности и не бояться заблудиться.
Оформление статьи: Лозинский Олег
Географическая карта мира с широтой и долготой: фото
Форма Земли похожа на сферу. Если нужно определить точку на поверхности этой сферы, то можно воспользоваться глобусом, который является нашей планетой в миниатюре. Но существует самый распространенный способ поиска точки на Земле — это географические координаты — широта и долгота. Измеряются эти параллели в градусах.
Географическая карта мира с широтой и долготой — фото:
Параллели, которые проведены вдоль и поперек всей карты — это широта и долгота. С их помощью можно быстро и легко отыскать любую точку мира.
Географическая карта мира с широтой и долготой: фото
Географическая карта полушарий удобна для восприятия. На одной полусфере (восточной) изображена Африка, Евразия и Австралия. На другой — западной полусфере — Северная и Южная Америка.
Географическая карта мира с широтой и долготой
Определение координат на виртуальной карте Google
Одними из самых популярных онлайн-карт являются Google Maps и Яндекс Карты. Ими пользуются в большинстве странах мира. Чтобы открыть карты Гугл, перейдите по адресу в мобильном или веб-браузере https://www.google.ru/maps. Если у вас есть координаты, их можно ввести прямо в строке поиска. Система отлично поймёт и определит ведённые вами данные. В этих картах нужно сначала писать широту, а после долготу.
Онлайн-сервис Google Maps
Для широты корректны записи с положительным и отрицательным градусом с максимальным значением 90°. Для долготы с отрицательным и положительным значением — 180°. Дробным разделителем в Google Maps должна быть только точка, но не запятая. Иначе система может выдать ошибку. Правильно так: 43.60°S. Поисковая строка не понимает русского языка. Если вы хотите найти здесь координаты, вводите их в следующем формате 00°00’.0’’S (градусы, минуты, секунды, южной широты), затем пробел и запись долготы — 00°00’.0’’W (западной долготы).
Поиск координат в Google Maps
Google-карты имеют описание каждой местности. По заданным координатам можно найти населённый пункт, его название на разных языках и добавить информацию от себя. В Google Maps есть 2 режима просмотра карты: обычный и со спутника. Вы можете включить режим просмотра улиц. И найти название улицы в любом городе, любой страны. Если вы хотите определить координаты точки на карте, которых у вас нет, введите в поисковой строке название населённого пункта.
Слева в блоке будет его координаты и описание. Формат записи в этих картах нам уже известен. Поэтому не составит труда переписать его в удобной для себя форме. При помощи дополнительных инструментов карту можно вращать, ставить метки, измерять маршруты между городами и многое другое.
Географическая широта и долгота
Географические координаты состоят из двух составляющих: широты и долготы, угловых величин, используя которые каждый человек может определить месторасположение любого объекта на карте мира. Изучением широты и долготы земного шара занимались еще в древние времена.
Широта представляет собой географическую координату в числе систем сферических координат, которая определяет точки, расположенные на поверхности Земли относительно экватора. Географическую широту объектов, которые расположены в северном полушарии считают положительной, в южном полушарии – отрицательной.
В географии существует понятие южных и северных широт. Определить какая широта является южной, а какая северной просто: если точка двигается от экватора в сторону Северного полюса, она попадает в зону северных широт.
Широты на карте изображают линиями, идущими параллельно экватору и друг другу, отсюда и название этих линий – параллели. Расстояние между параллелями измеряется не в километрах, а в градусах, в минутах и секундах.
Каждый градус состоит из 60 минут, 1 минута – из 60 секунд. Экватор является нулевой широтой, Северный и Южный полюс расположен на 90 градусе северной и 90 градусе южной широты соответственно.
Один градус географической долготы равен 1/360 длины экватора.
Понятие географической долготы
Долгота – это координата в системе географических координат, которая определяет месторасположение точки относительно нулевого меридиана. Благодаря долготе мы можем узнать положение предмета относительно запада и востока.
В географической науке нулевой точкой отсчета географической долготы принято считать Гринвичскую лабораторию, которая расположена на востоке Лондона (Гринвичский меридиан).
Линии, которые определяют долготу, называются меридианами. Все меридианы пролегают перпендикулярно линии экватора. Все меридианы пересекаются в двух точках – на Северном и Южном полюсе.
ольшинство материков находится в области восточных долгот, исключением являются только два континента – Южная и Северная Америка. Точки, которые располагаются на меридианах, имеют одинаковую долготу, но разную широту.
1/ 180 часть меридиана является одним градусом широты. Средняя длина одного градуса широты становит примерно 111 км. Показатели восточной долготы считают положительными, показатели западной долготы – отрицательными.
Нужна помощь в учебе?
Предыдущая тема: Градусная сетка Земли: паралелли и меридианы Следующая тема: Строение Земли: форма и внутреннее строение Земли
Какие существуют сервисы для решения этой задачи?
Вообще, сервисы подразделяются на 2 основных категории – это оффлайн- и онлайн-сервисы. Оффлайн-сервис подразумевает, что вы скачиваете на свой локальный компьютер некую базу данных (добавляете её в своё приложение) и получаете информацию из неё. Онлайн-сервис представляет из себя API, к которому вы формируете запрос в соответствии с документацией, и он возвращает вам ответ с интересующей вас информацией. В большинстве случаев онлайн-сервисы предлагают более высокую точность ответов, поскольку обновляются более часто, а также более удобны в использовании – потому что вам нет необходимости поддерживать отдельную машину под оффлайн-сервис или зашивать базу данных (достаточно объемную) и обслуживающий её код в ваше приложение. Поэтому в рамках этой статьи я буду рассматривать только онлайн-сервисы для решения задач прямого и обратного геокодирования.
Как рассчитать долготу?
Определение долготы не отличается от нахождения широты. Однако здесь есть свой нюанс – необходимо вначале определить полушарие, в котором находится объект.
Новый Орлеан
Один из известнейших городов США расположен в западном полушарии на берегу Мексиканского залива. Он находится практически на 90 меридиане. Отсчет градусов от в этом полушарии следует вести от нулевого меридиана в западном направлении. Таким образом, координата Нового Орлеана 900 западной долготы.
Лос-Анджелес
Город находится также в западном полушарии на берегу Тихого океана между 120 и 110 меридианами.
Чем севернее или южнее от экватора располагается объект, тем легче определить его долготу, так с приближением к полюсам уменьшается расстояние между градусами. Лос-Анджелес отстоит от 120 меридиана на 2 градуса и его координатой является 120 – 2 = 1180 западной долготы.
Мурманск
Этот северный порт находится справа от нулевого меридиана, а значит, что расположен он в восточном полушарии. Ближайшие к нему меридианы – 300 и 400. Количество градусов от 30 меридиана до Мурманска – 3 и его координата: 30 + 3 = 330 восточной долготы.
Примеры обратного геокодирования
Чтобы понять, как сервисы справляются с обратным геокодированием, т.е. получением адреса по координатам, я попробовал по указанным выше адресам вместо адреса подставить координаты того же третьего дома на Красной площади: 37.62159949999999, 55.7546025 Результаты:
Яндекс | Россия, Москва, Красная площадь, 3 |
Дадата | г Москва, Красная пл, д 3 |
Красная площадь 3, ТД ГУМ, Москва, Россия, 109012 | |
GraphHopper | 3, Red Square, 109012, Tverskoy District, Russia |
MapBox | Кофемания, ГУМ, Москва, Город Москва 109012, Russia |
OSM | Государственный универсальный магазин (ГУМ), Красная площадь, Китай-город, Тверской район, Центральный административный округ, Москва, Центральный федеральный округ, 109012, Россия |
Интересно, что GraphHopper, если кликать мышью по разным частям ГУМа, возвращает разные названия магазинов. Дадата и Яндекс возвращают только адреса, остальные сервисы стараются предложить также POI, расположенные по этому адресу. Формат ответа и набор данных у всех сервисов аналогичен данным, которые возвращаются при прямом геокодировании.
Тарифы и особенности сервисов
В процессе изучения рынка сервисов геокодирования я выделил для себя следующие основные решения:
Название | Тариф | Комментарий |
tech.yandex.ru/maps/geocoder |
Бесплатно до 25 000 запросов/сутки Если больше – коммерческие тарифы от 120 000 рублей в год за 1000 запросов в сутки | Кроме количества запросов также ограничен лицензионным соглашением — результаты кодирования нельзя сохранять и использовать без карты (но можно кешировать), их нужно отображать только на картах Яндекса и только в рамках общедоступных сервисов (доступных всем или с открытой бесплатной регистрацией). |
dadata.ru/api/suggest/address |
Бесплатно 10 000 запросов в сутки. Платные тарифы от 5000 рублей в год за 50 тысяч запросов в сутки. | Оферта не позволяет его использовать полностью в автоматическом режиме — подсказки — только для уточнения данных, которые вводятся пользователем, прямо в форме где они вводятся. Обрабатывать собранные ранее массивы адресов в автоматическом режиме подсказками нельзя. Если не использовать автоматический режим, то этот сервис самый дешевый на рынке. На платных тарифах даёт массу полезной информации – цены на недвижимость, ближайшие станции метро, коды ФИАС и КЛАДР и тд |
developers.google.com/maps/documentation/geocoding/intro |
5$ за тысячу запросов, бесплатного лимита нет. | Полностью платный сервис, поэтому я в своей работе его практически не использовал. Зато есть клиенты для Java, Python, Go и Node.js |
www.graphhopper.com/developers |
Стоимость основана на использовании кредитов. Бесплатно вам дается 500 кредитов в день, что эквивалентно примерно 1666 запросам. Коммерческие тарифы от 48 евро в месяц за 5000 кредитов (16 666 запросов) в сутки | У сервиса много других интересных функций помимо геокодирования: Routing API и Route Optimization API — автоматическое построение и оптимизация маршрутов Matrix API — построение логистической матрицы с учетом загруженности дорог Isochrone API — сервис, позволяющий построить зону, в которую можно доехать из заданной точки за фиксированное время. Map Matching API — сервис, который привязывает GPS-треки к дорогам, чтобы можно было построить историю передвижения. |
docs.mapbox.com/api/search |
Бесплатно до 100 000 запросов в месяц. Свыше 100 000 – 0,75$ за каждую 1000 запросов | Удобный сервис, потому что имеет огромное количество официальных модулей для Swift, JS, Java, Python, Ruby. Плохо работает с Россией |
OpenSource-решение, которое вы можете развернуть на своей машине бесплатно. | Если вас не устраивает бесплатная возможность, которая на самом деле условно бесплатная — ведь вам нужно поддерживать работоспособность сервиса на собственной машине, обслуживать её и пр. – вы можете воспользоваться одним из платных провайдеров API. Список можно найти тут: https://wiki.openstreetmap.org/wiki/Nominatim#Alternatives_.2F_Third-party_providers |
Как определить долготу и широту?
Географические долгота и широта используются для точного определения физического расположения любого объекта на земном шаре. Самым простым способом нахождения географических координат является использование географической карты. Этот способ требует для его реализации наличия некоторых теоретических знаний. Как определить долготу и широту, описано в статье.
Географические координаты
Координаты в географии представляют собой систему, в рамках которой каждой точке на поверхности нашей планеты присваивается набор чисел и символов, позволяющий точно определить положение этой точки.
ЭТО ИНТЕРЕСНО: Как обойти глушилку gps
Географические координаты выражаются тремя числами — это широта, долгота и высота над уровнем моря. Первые две координаты, то есть широта и долгота, чаще всего используются в различных географических задачах. Начало отчета в географической системе координат находится в центре Земли.
Прежде чем рассмотреть вопрос, как определить долготу и широту по географии, следует разобраться с этими понятиями подробнее.
Понятие о широте
Под широтой конкретной точки на поверхности Земли понимается угол между экваториальной плоскостью и линией, соединяющей эту точку с центром Земли. Через все точки на поверхности земли, имеющие одинаковую широту, можно провести плоскость, которая будет параллельна плоскости экватора.
Плоскость экватора — это нулевая параллель, то есть ее широта равна 0°, и она делит весь земной шар на южное и северное полушария. Соответственно, северный полюс лежит на параллели 90° северной широты, а южный полюс лежит на параллели 90° южной широты.
Расстояние, которое соответствует 1° при движении вдоль конкретной параллели, зависит от того, какая это параллель. С увеличением широты при движении на север или на юг это расстояние уменьшается. Таким образом, самой длинной параллелью является 0°.
Широта показывает, насколько далеко на север или на юг от экватора лежит данная точка на поверхности Земли.
Понятие о долготе
Под долготой конкретной точки на поверхности Земли понимается угол между плоскостью, проходящей через эту точку и ось вращения Земли, и плоскостью нулевого меридиана. По мировому соглашению нулевым полагается меридиан, который проходит через Королевскую Обсерваторию в Гринвиче, находящуюся на юго-востоке в Англии. Гринвичский меридиан разделяет земной шар на восточное и западное полушария.
Таким образом, каждая линия долготы проходит через северный и южный полюса. Длины всех меридианов равны и составляют 40007,161 км. Если сравнить эту цифру с длиной нулевой параллели, то можно сказать, что геометрическая форма планеты Земля является приплюснутым с полюсов шаром.
Можно задаться интересным вопросом, долготу каких точек нельзя определить. Исходя из определения меридиана, получаем, что через две точки на поверхности нашей планеты проходят все 360 меридианов, этими точками являются южный и северный полюса.
Максимальное значение координат
Максимальная долгота географического объекта составляет 1800. Так как этот меридиан не принадлежит к какому-либо полушарию, то при записи этой координаты название полушария опускается. Если речь идет о максимальной долготе в каждом полушарии, то это 1790 как восточной или западной долготы соответственно.
Географическая широта начинает отсчитываться от линии экватора, который является нулевой линией, не принадлежащей ни к одному полушарию, поэтому минимальное значение широты составляет 00 без обозначения полушария.
Параллели, опоясывающие всю Землю, условно делят ее на 180 градусов от полюса до полюса. Но, так как экватор разделяет планету на 2 полушария, то максимальная долгота объекта будет составлять 180/2 = 900 северной или южной широты.
Примеры данных, которые дают разные сервисы
Чтобы показать примеры данных, которые предоставляют нам разные сервисы, я использовал адрес в самом центре Москвы — Красная площадь, д. 3 .
Ответы сервисов я собрал в один gist, где можно посмотреть их в том виде, в котором сервис их вернул: https://gist.github.com/iskander-g/6c2bb24065708730c76993da4afea9d0
Больше всего сведений об адресе дают Дадата и OSM. При этом у OSM доступный плейграунд для тестирования возвращает сразу отформатированную HTML-страницу с данными — получить в сыром виде ответ сервиса у меня не получилось, но на странице можно оценить все сведения, которые имеются у сервиса об адресе.
Сравнительная таблица сведений, которые были предоставлены сервисами в виде структурированных данных:
Яндекс | Дадата | Graphhopper | MapBox | OSM | ||
Координаты | + | + | + | + | + | + |
Адрес в нормализованном виде | Россия, Москва, Красная площадь, 3 | г Москва, пл Красная, д 3 | Красная пл., 3, Москва, Россия, 101000 | — | Россия, Город Москва, Москва, округ Тверской, 109012, Красная Площадь 3 | 3, Красная площадь, Китай-город, Тверской район, Центральный административный округ, Москва, Центральный федеральный округ, Россия |
Страна | + | + | + | + | + | + |
Федеральный округ | + | + | + | |||
Регион | + | + | + | + | + | |
Город | + | + | + | + | + | + |
Административный округ в городе | + | + | + | |||
Район | + | + | + | + | ||
Улица | + | + | + | + | + | + |
Номер дома | + | + | + | + | + | |
Ближайшие станции метро | + | |||||
Почтовый индекс | + | + | + | + | + | |
Коды ФИАС, КЛАДР, ОКАТО, налоговой | + | |||||
Информация о типе и стоимости недвижимости | + | |||||
Информация о размещенных по адресу магазинах и других POI | + | |||||
Название места на других языках | + |
API тестировался в официальных примерах/плейграундах, там, где это есть. Яндекс и Гугл потребовал получить API-ключ, чтобы протестировать сервис. У Гугла также пришлось оформить платежный аккаунт. Адреса, где можно протестировать сервисы:
Yandex (требуется ключ)
https://geocode-maps.yandex.ru/1.x/?apikey=&geocode=
Дадата
https://dadata.ru/suggestions/
Google (требуется ключ)
https://maps.googleapis.com/maps/api/geocode/json?address=&key=
GraphHopper
https://graphhopper.com/api/1/examples/#geocoding
MapBox
https://docs.mapbox.com/search-playground/
OSM
https://nominatim.openstreetmap.org/
Выводы
Перед тем, как начать использовать в своей работе какой-либо сервис геокодирования, его обязательно надо протестировать на базе адресов ваших пользователей
Потому что я, например, очень большие надежды возлагал на MapBox – ведь у этого сервиса очень большая база различных модулей, и видно, что они уделяют большое внимание удобству работы с их сервисом. К сожалению, качество геокодирования у этого сервиса оказалось самым низким
GraphHopper похож на MapBox — и по разнообразию предлагаемых сервисов, и по качеству работы геокодера. OSM показывает хорошие результаты за рубежом, и достаточно посредственные – в России. Вообще, если говорить именно о российской базе, с которой лично я в основном работаю, то тут лидеры — Яндекс, Google и Дадата. Яндекс показывает лучшие результаты в России, и достаточно посредственные – за рубежом. Google в целом работает хорошо везде, и везде, бывает, промахивается. И при этом самый дорогой. Дадата хорошо работает с российскими адресами, недорогая, предлагает много дополнительных сервисов, но становится бесполезна при пересечении границы.
В целом все эти три сервиса показали очень достойный результат, и если ваши клиенты в основном указывают адреса не из частных секторов, то я бы для работы выбрал Дадату, по ряду причин:
- Более низкие тарифы, чем у Яндекса и Гугла
- Меньше заморочек с лицензией
- Больше дополнительных сервисов, доступных прямо из подсказок – индекс, станции метро, часовой пояс и пр.
Если вам не нужны эти дополнительные сервисы, и вы готовы соответствовать лицензионным ограничениям Яндекса, то он тоже, безусловно, будет хорошим выбором. Google, на мой взгляд, слишком дорог, если вы работаете с Российскими адресами. Еще интересное наблюдение по итогам тестирования — наиболее высокое качество у всех сервисов геокодирования – в Беларуси.