Я пытаюсь построить водный путь вместе с землей (сеть улиц / карта) и следами (здания).Моя проблема заключается в том, что водные пути представляют собой большие замкнутые многоугольные области , что означает, что вместо того, чтобы построить красивую синюю реку правильной толщины, она наносит на карту реку по всей половине фигуры (и там нет воды, IRL ...).Это то, что у меня есть в Jupyter-Lab (пример координат с несколькими дорогами для быстрого теста):
%matplotlib inline
import matplotlib.pyplot as plt
import osmnx as ox
ox.config(log_file=True, log_console=True, use_cache=True)
import numpy as np
map_settings = dict(
dist=805,
edge_color='k',
bgcolor='w',
dpi = 300,
point = (45.27386, 25.04644),
default_width=2,
)
fig, ax = ox.plot_figure_ground(network_type='all',
**map_settings,
)
gdf_bldings = ox.footprints.footprints_from_point(point=map_settings['point'],
distance=map_settings['dist'], footprint_type='building',
)
fig, ax = ox.footprints.plot_footprints(gdf_bldings, fig=fig, ax=ax,
set_bounds=False, save=False, show=True, close=False,
dpi=map_settings['dpi'],
)
gdf_water = ox.footprints.footprints_from_point(point=map_settings['point'],
distance=map_settings['dist'], footprint_type='waterway',
)
fig, ax = ox.footprints.plot_footprints(gdf_water, fig=fig, ax=ax, color='b',
set_bounds=False, save=False, show=True, close=False,
dpi=map_settings['dpi'],
)
coslat = np.cos(np.cos(map_settings['point'][1] / 180. * np.pi) )
ax.set_aspect(1/coslat)
fig.set_figwidth(10)
fig
, и это дает следующий рисунок.
![OSMnx plot of ground network, building footprints and waterways](https://i.stack.imgur.com/nLoFu.png)
Я пробовал другие места, и там тоже самое. Можно ли как-нибудь исправить это, чтобы получить красивую реку, как и ожидалось? Я попытался перебрать стройные объекты и выяснить, могу ли я удалить координаты, но она становится уродливой довольно быстро.