OSMnx: кратчайший путь для набора отправителей и пунктов назначения - PullRequest
0 голосов
/ 06 октября 2019

Предположим, у меня есть точечный шейп-файл с исходными и конечными точками.

1) Как я могу использовать nx.shortest_path для расчета для каждого исходного пункта и его пункта назначения? 2) Как сохранить соответствующий маршрут в виде шейп-файла? Я проверил Сохранить маршрут и сохранить его кривизну с помощью Python OSMnx , он показывает, как получить MultiLineString для маршрута, но не показывает, как экспортировать маршрут.

1 Ответ

0 голосов
/ 09 октября 2019

Следующие шаги будут работать:

  1. Откройте шейп-файл с геопандами
  2. Для каждой исходной точки в шейп-файле используйте OSMnx, чтобы найти ближайший сетевой узел , затем сделайте то же самое для каждой точки назначения
  3. Рассчитайте кратчайший путь между каждой парой узла источника / назначения, используя nx.shortest_path
  4. Сохраните маршрут в MultiLineString wkt
  5. Поскольку wkt является простым текстом, просто сохраните этот текст на диск, используя любой метод сериализации Python. Или соберите все MultiLineStrings в GeoSeries и сохраните их на диск в виде шейп-файла или файла GeoJSON.
...