您的位置:首页 > 运维架构

ArcGIS处理Open Street map数据

2014-02-11 20:31 459 查看
        前一阵子搞了下,open Street map的数据,简单总结了下自己处理的一些方法和过程吧。

首先是下载数据,针对Open street map的数据,ArcGIS有一专门的插件,ArcGIS Editor for OpenStreetMap,地址

下载合适的版本进行安装,安装后会在系统工具箱里增加了下图所示的一个工具箱:



工具箱里基本工具如下图所示



接下来进入正题,下载数据,可以双击Download OSM Data工具,此工具会将数据下载到本地的一个filegdb内



从工具参数中可以看出,可以设置下载的区域和下载后数据存放的地方,下载时,工具对下载范围和下载节点数有限制,所以在下载一大片数据时候可能需要分块进行下载,然后进行合并。下载完成后会有以下的数据



基本组成为点线面数据和一个关系的表,点线面数据字段基本一致



有比着还长的,一大串字段,通过字段可以看出,对于点线面所属的类型,是通过字段区分的,但是在点线面的字段里却没有与name相关的字段,这对于我们日常使用就用很大不便,无法进行标注,也无法通过名称进行查询,起初一直觉着这个字段应该存在于relation那张表里,relaition表里osmTags的一个blob字段,后来通过arcpy解析了下里边的内容发现,内部存储的是一个xml,主要是与公交线路相关的数据,所以name这个字段并不是存在relation表里,后来去查ArcGIS editor for openstreet
map的文档时候发现了下图这个工具,运行之后可以将中文名,英文名之类的好多字段进行添加并赋值。



这样基本数据就处理完了,后面需要做两个工作,一是将点线面进行分类,二是将分类映射成相对应的中文名,将点线面分类可以利用select工具制作一个gp模型进行筛选,如下图所示(工具挺简单就是比较繁琐,有需要的同学可以留言 我可以把我做好的发给大家哈)



至于进行分类,就用了下python处理了下,用arcpy还是挺 简单的,同样,需要的同学留言,我可以发给大家。简单总结就这些吧,其实这个插件功能还是蛮强大的,从工具命名来看可以创建网络数据集,在osm数据里也有不少相关的公交线路等,有兴趣的童鞋,可以自己下载研究玩玩。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: