批量获取"/>
AOI区域面数据批量获取
关于地图AOI数据,网上很多资料已经提到过了,相信也不必多说。
AOI:Area of Interest,又叫兴趣面。主要用于在地图中表达区域状的地理实体,如居民小区、学校、景区等。
在定义一个面时,需要明确边界点点位信息。从空间几何上来看,AOI就是多个POI数据的集合。因此,AOI相比于POI来说,具有更好的表达力,可以直观的感受到数据的占地分布情况、面积、密集程度等信息。
例如:
“梨花溪景区”数据:在POI数据中,其仅用中心点位置表示;在AOI数据中,需要用整个范围面来表示。
在之前的文章当中也给大家简单讲解了POI数据的获取方式,本次就简单给大家介绍如何利用FME来实现AOI兴趣面数据的获取。
以下:
以成都市部分景区名称数据为例,获取名称对应的公园面要素。
一、涉及工具
软件:FME Desktop
许可:百度地图开放平台key
二、实现思路
1 分析数据获取路径
AOI获取路径:/?reqflag=pcmap&from=webmap&qt=ext&uid=XX&ext_ver=new&l=18
POI获取路径:= XX &tag= XX ®ion= XX &output=json&ak= XX
对目前AOI数据获取接口进行分析不难发现,想要从AOI接口中获取到相应的数据,必须提供uid参数,通过分析可知AOI接口需要的uid参数与对应POI中记录的参数一致。因此,想要获取AOI数据,首先需要从POI接口返回数据中获取uid参数值。
2 POI数据获取及解析
POI获取路径:= XX &tag= XX ®ion= XX &output=json&ak= XX
分析POI获取路径,以下参数需进行动态填写。
Query:检索关键字。行政区划区域检索不支持多关键字检索。如query=景区。
Tag:检索分类偏好,与q组合进行检索,多个分类以","分隔(POI分类),如果需要严格按分类检索,请通过query参数设置。
Region:检索行政区划区域(增加区域内数据召回权重,如需严格限制召回数据在区域内,请搭配使用city_limit参数),可输入行政区划名或对应cityCode。
Ak:开发者的访问密钥。
本文中需要提取成都市景区数据,POI获取路径可设置为= ‘景区名称’ &tag= 景区,公园 ®ion= 成都 &output=json&ak= ‘key’
通过FME动态传参,获取到各景区名称返回数据json成果。
通过json成果解析类转换器,将返回结果中uid数据解析。
对POI获取路径返回的多个数据进行分析,数据中最开始返回的数据匹配度最高,往后逐步降低。此处提起出返回列表中第一位数据作为对应POI数据。
3 AOI数据获取及解析
通过上一步返回的uid成果,动态合并AOI数据提取链接,自动提取AOI兴趣面数据信息,返回json数据成果。
通过json成果解析类转换器,动态获取AOI坐标串数据。
分析坐标串存储方式,解析出组成AOI兴趣面的坐标点对。
处理后成果。
处理后AOI兴趣面数据成果,形成仅包括组成边界面的XY坐标串,且X Y坐标间以空格分割开,不同坐标点间以逗号分析的标准结构样式。
通过得到的坐标串标准样式,构建数据几何。
最后,百度AOI数据的地理边界点坐标使用的坐标系不是常见的坐标系,这种坐标系被称为墨卡托坐标系,在使用前需转换为WGS84坐标系。
三、成果展示
输出数据
输出AOI兴趣面
四、思考与总结
1 输入数据24条,输出数据仅20条,说明数据并未完全处理,可进行必要优化,优化POI返回uid挂接正确性,并且考虑对未处理的数据进行循环处理。
2 通过POI、AOI接口获取数据过程中,不要忽略数据“减速操作”。开放平台数据获取接口存在并发限制,处理过程中为更好规避可能存在的问题,对输入到httpcaller转换器的数据进行必要的减速操作。
更多推荐
AOI区域面数据批量获取
发布评论