Thursday, December 29, 2016

Расчет пешеходной доступности - Galton в QGIS


То, что я долго ждал! Спешу поделиться с вами инструкцией по загрузке результатов расчета Galton прямо в QGIS! Это будет первый пост в небольшой серии заметок про расчеты, связанные с пешеходами.
Если вы еще не в курсе, то Galton - это интерактивный сервис по расчету пешеходной/автомобильной доступности, предоставленный командой Urbica. Короче говоря, больше не рисуем зоны доступности обычным радиусом, а показываем реальными изохронами!
Рецепт импорта я получил от разработчика, и теперь можно будет обойтись без Photoshop. Подключаемся к сервису через обычный HTTP, который выдает ответ в виде geojson.

Шаг 1. Составляем запрос (пишем где угодно, чтобы потом скопировать в QGIS):


  • moscow - город для расчета. Сейчас есть возможность расчета по городам, указанным в списке на сайте сервиса
  • foot - пешком, можно заменить на car . Скорость для пешехода, если я правильно понял, составляет 4 км в час
  • lng и lat - координаты, вбиваем вручную, посмотрев по карте; количество знаков после запятой по нашему желанию
  • intervals=x, где x - это время в минутах. Можно указать несколько интервалов сразу (например: ...&intervals=10&intervals=20&...)
  • bufferSize = x, где x - это размер захватки расчета в километрах. Размер буфера должен быть больше, чем границы изохрон, иначе будет обрезка по квадрату
  • cellWidth=x, где x - это размер ячейки для расчета в километрах. Чем меньше значение, тем больше точность прорисовки.
Надеюсь, что я верно понял эти параметры. Можно изучить подробности на страничках Galton, OSRM, turf.pointgrid, concaveman (последний просто отвечает за построение вогнутой оболочки)

При копировании адреса обратите внимание, чтобы в квадратных скобках не появлялось никаких символов - у меня возникали 1 и 0 при отправке через Facebook

Шаг 2. Вставляем полученный адрес в QGIS

Добавляем векторный слой (Layer - Add Vector Layer) и вставляем адрес как URI для geojson в типе источника Protocol (хотя можно и просто в поле Browse в типе источника File)
И нажимаем Open!
Немного нужно подождать. Чем меньше значение cellWidth, тем дольше загружается ответ. 

Шаг 3. Настраиваем графику векторного слоя (а при желании и имя)
Пересохраняем результат в shp-файл и приступаем к запросу для других точек. И так мы можем совмещать на одной карте разные зоны доступности!

Конечно, точность здесь относительна (в первую очередь, из-за данных OSM), и следует критически оценивать результаты. Я бы советовал проверять собственными ногами - самый точный датчик!

Отдельное спасибо Андрею Кармацкому за инструктирование!

No comments:

Post a Comment