osmnx - OSMnx:创建矩形建筑足迹
问题描述
我正在使用 OSMnx 存储库页面上示例页面中显示的示例“make_plot”函数来生成建筑足迹地图。输出的是一个正方形的图片,有没有什么办法可以调整高度和宽度来生成一个矩形文件?
我对示例进行了一些更改以使用几何模块而不是弃用的足迹:
def make_plot(place, point, dist, network_type='all', bldg_color='#FF0000', dpi=300,
default_width=1,
street_widths = {
"footway": 0.5,
"steps": 0.5,
"pedestrian": 0.5,
"service": 0.5,
"path": 0.5,
"track": 0.5,
"primary": 0.5,
"secondary": 0.5,
"trunk": 1,
"motorway": 2 ,
}):
gdf = ox.geometries.geometries_from_point(center_point=point, tags={'building':True}, dist=dist)
fig, ax = ox.plot_figure_ground(point=point, dist=dist, network_type=network_type,
default_width=default_width, street_widths=street_widths, save=False, show=False, close=True, bgcolor='#343434')
fig, ax = ox.plot.plot_footprints(gdf, ax=ax, color=bldg_color,
save=True, show=False, close=True, filepath="images/{}.png".format(place), dpi=dpi)
make_plot(地点、点、距离)
解决方案
输出的是一个正方形的图片,有没有什么办法可以调整高度和宽度来生成一个矩形文件?
您正在查询一个正方形区域,因此您的结果图是相应的正方形。如果你查询一个非正方形区域,你会得到一个非正方形图:
import osmnx as ox
ox.config(use_cache=True, log_console=True)
gdf = ox.geometries_from_place('Piedmont, CA, USA', tags={'building':True})
fig, ax = ox.plot_footprints(gdf)
请注意,您得到了fig, ax
支持,您当然可以使用通常的matplotlib 方式调整图形大小fig.set_size_inches(9, 3)
:请注意,这会调整您的图形大小而不是拉伸它(例如,从正方形到矩形)。另请注意,所有 OSMnx 绘图函数都采用可选figsize
参数。请参阅文档。
我对示例进行了一些更改以使用几何模块而不是弃用的足迹
这些示例在一个月前 OSMnx v0.16.0 发布时进行了更新,以反映新geometries
模块。footprints
然后也删除了对已弃用模块的任何引用。
推荐阅读
- javascript - 如何通过 Chrome 扩展替换 navigator.credentials.create 请求或响应参数?
- r - 在 ggplot 中重新排序数据会导致数据和条形之间不匹配
- python - matplotlib 中的 3D 线框可视化问题
- php - 从 codeigniter 查询的数组结果中删除行
- html - CSS 包装两列(主要内容和菜单栏)
- delphi - 从 go 调用 Delphi dll
- kotlin - Micronaut 数据 - 保存 ZonedDateTime 字段时出错 [无法将类型 [class java.time.ZonedDateTime] 转换为目标类型:class java.util.Date]
- android - 如何禁用第二个底页对话框上的后退按钮?
- python - 如果特定 ID 的值不存在于另一个 ID 中,则将具有值的行插入到 ID
- c# - Microsoft.Net.Compilers 仅在 MSBuild v16.3 及更高版本上受支持