Я работаю в Jupyter и не понимаю, почему OsmNx сохраняет SVG и PNG с разными шкалами.
Я попытался изменить DPI и настроить другие параметры, но не решил проблему.
Я ничего не нашел в онлайн-документации и некоторых руководствах.
Это сокращенный рабочий код:
import osmnx as ox
import os
from IPython.display import Image
%matplotlib inline
ox.config(log_file=False, log_console=False, use_cache=True)
place = "aPlace"
network_type = "drive"
location_point = (50.6233696,12.3007474)
G = ox.graph_from_point(
location_point,
distance=1600, #<============
distance_type='bbox',
network_type="drive",
clean_periphery=False,
)
street_widths = {'footway' : 0.5,
'steps' : 0.5,
'pedestrian' : 0.5,
'path' : 0.5,
'track' : 0.5,
'service' : 2,
'residential' : 3,
'primary' : 5,
'motorway' : 6}
ox.plot_graph(G, show=True,node_size=0, edge_linewidth=2, edge_color="#000000", save=True, filename="map1", file_format='svg')
ox.plot_figure_ground(G, street_widths=street_widths, show=True, bgcolor="#ffff00", edge_color="#000000", save=True, filename="map1", file_format="png")
Изменение distance
SVG правильно масштабируется.
PNG вместо этого достигает максимального размера и затем обрезается.
В моем проекте PNG позже векторизовано. Я хочу сохранить толщину дороги в зависимости от типа дороги.
Именно поэтому я использую plot_figure_ground
(который может принимать параметр street_widths
), а не plot_graph
(который отображает все дороги одинаковой толщины).
На этих изображениях вы можете видеть этоэффект ( SVG белый фон, PNG желтый фон):
Что я делаю не так?