Поначалу спасибо, что нашли время, чтобы помочь мне :-)
Я хочу создать неориентированный граф из водных путей, например, из каналов Венеции или Амстердама.
В OpenStreetMaps есть такой график сети водных путей этих городов, но в пакете OSMnx нет такого фильтра для фильтрации водных путей (или, может быть, я еще не знаю ;-)).
import osmnx as ox
G = ox.graph_from_bbox(52.36309012572587,4.890326718121118,52.36590601699889,4.898316757037793, network_type='all')
G_projected = ox.project_graph(G)
ox.plot_graph(G_projected)
Я думал, что можно было просто загрузить всю карту, а затем отфильтровать только по сети водного пути. Но я не знаю, как идти дальше об этом. OSMnx был бы лучшим, так как у меня сразу был график, который я мог бы использовать для функций networkx, таких как кратчайший путь Дейкстры.
Другой способ, которым я думал, был пакет путепровода:
import overpass
import networkx as nx
import matplotlib.pyplot as plt
api= overpass.API()
data = api.get('way(52.36309012572587,4.890326718121118,52.36590601699889,4.898316757037793);(._;>;)', verbosity='geom')
[f for f in data.features if f.geometry['type'] == "LineString"]
Но это все равно не работает, потому что я не понял, как отфильтровать данные и преобразовать их в график, чтобы сеть могла использовать их.
Надеюсь, вы, ребята (и девушки :-)), можете мне помочь, потому что я понятия не имею, как идти дальше.
С уважением,
Йерун