二行展示路网
完整代码#运行环境 Python 3.11
import osmnx as ox
ox.plot_graph(ox.graph_from_place('Siming Qu, Xiamen, Fujian, China'))
三行代码下载行政区路网
完整代码#运行环境 Python 3.11
import osmnx as ox
# 获取厦门市思明区的街道网络图
G = ox.graph_from_place("Siming Qu, Xiamen,Fujian,China", network_type="drive")
# 保存为GeoPackage文件,文件名与数据匹配
ox.save_graph_geopackage(G, filepath="D:/data/Siming_network.gpkg")
五行代码赋值路网速度与通行时间
完整代码#运行环境 Python 3.11
# 导入osmnx库,该库用于从OpenStreetMap获取地理数据并分析路网
import osmnx as ox
# 定义要绘制地图的地点,这里是以厦门市思明区为例
place = "Siming Qu, Xiamen, Fujian, China"
# 根据指定的地点创建一个道路网络图,参数设置为"drive",意味着我们构建的是适用于驾车的路网
G = ox.graph_from_place(place, network_type="drive")
# 为路网中的每一条边添加速度信息,这是通过查询路网数据中的最大速度限制来实现的
G = ox.add_edge_speeds(G)
# 在已有的路网上进一步添加每条边的预估通行时间,这是基于边的速度和长度计算得出的
G = ox.add_edge_travel_times(G)
五行代码可视化设置
完整代码#运行环境 Python 3.11
# 导入必要的库
import matplotlib.pyplot as plt
import osmnx as ox
# 定义要绘制地图的地点
place = "Siming Qu, Xiamen,Fujian,China"
# 使用osmnx从指定地点创建道路网络图,类型为驾驶网络
G = ox.graph_from_place(place, network_type="drive")
fig, ax = ox.plot_graph(
G, # 输入图
ax=None, # 可选:在已存在的轴上绘制
figsize=(8, 8), # 若ax为None,则创建此尺寸的图形
bgcolor="#111111", # 图形背景色
node_color="r", # 节点颜色
node_size=15, # 节点大小,若为0则不绘制节点
node_alpha=None, # 节点透明度
node_edgecolor="none", # 节点边缘颜色
node_zorder=1, # 绘制节点的层级顺序,边总是1
edge_color="#999999", # 边颜色
edge_linewidth=1, # 边宽度,若为0则不绘制边
edge_alpha=None, # 边透明度
show=True, # 是否立即显示图形
close=False, # 绘制后是否关闭图形窗口
save=False, # 是否保存图形到磁盘
filepath=None, # 保存图形的路径
dpi=300, # 保存时的DPI
bbox=None, # 用于限制绘图范围的边界框
)
文章仅用于分享个人学习成果与个人存档之用,分享知识,如有侵权,请联系作者进行删除。所有信息均基于作者的个人理解和经验,不代表任何官方立场或权威解读。