记录一下基于Open Street Map(OSM)路网数据划分LCZ分类单元。
数据获取
CSDN本站里搜索到的,也有博客专门教学如何自己获取,时间关系,先用现成的,后续再自学。
道路分级
需要对城市道路进行分级。主要使用的是主干道、次干道、城市快速路和高速公路。不同城市的路宽不一样。以北京为例,城市快速路和主干道都达到了40-60m。这里需要对属性表创建字段,并赋值。
代码块如下:
def a(fclass):
if fclass=='motorway':
return 60
if fclass=='trunk':
return 50
if fclass=='primary':
return 45
if fclass=='secondary':
return 25
if fclass=='tertiary':
return 15
else:
return 0
(注意:属性表中需要赋值的道路可能不止这几个,实际操作中可能会多几个判断句;else语句是必须的,判断句必须包含了所有的情况)
赋值函数如下:
Shape_leng=
a(!fclass!)
划分单元时,仅使用上述几个类别的路,其余的删除即可。属性表-按字段选择-选择后删除。
分析工具-邻域工具-缓冲区。
创建一个矩形要素能包含研究区路网。
分析工具-叠加分析-交集取反。
数据管理工具-要素-多部件转至单部件。