基于OSM路网的LCZ分类单元划分

基于OSM路网的LCZ分类单元划分

记录一下基于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!)

划分单元时,仅使用上述几个类别的路,其余的删除即可。属性表-按字段选择-选择后删除。

分析工具-邻域工具-缓冲区。

创建一个矩形要素能包含研究区路网。

分析工具-叠加分析-交集取反。

数据管理工具-要素-多部件转至单部件。

相关作品