地图综合神器
问题
为什么我们要做数据综合?
数据综合(Generalization),永远是GIS界一个有趣但是不老的问题。以前我一直觉得数据越多细节越好,但是并不然,因为考虑到数据加载的效率等。
数据支持
Mapshaper是一个地图综合神器,它支持三种数据格式:
- Shapefile
- GeoJSON
- TopoJSON
步骤
上传其支持的文件,两个特别的选项:
- 线之间是否存在相交
- 修复拓扑错误,用同一个点捕获在相近的点

上传完数据后,主界面会出现数据主体,支持放大缩小漫游。右上方有三个按钮分别是:
- Simplify 简化
- Console 控制台
- Export 导出
其中,导出没什么可以说的。

简化,简化算法支持三种方法,我在香港的时候写过其中两套算法:
- Douglas-Peucker
- Visvalingam/effective area
- Visvalingam/weighted area
两个设置选项:
- 防止小的多边形消失,在高强度的简化当中
- 认为是平面坐标,而并非球面经纬度

点击apply,拖动条可以设置简化程度。举个栗子,下面两图分别是简化程度97%和1%。它们存在很大的细节差异,但是总体上,形状保持不变。当然,数据量也大大减少了。重要一点,数据处理过程没有拓扑错误。


至于控制台命令行操作,作为家庭作业留给你们自己研究。

参考
【 D3.js 入门系列 --- 10.1 】 简化 GeoJSON 文件
转载,请表明出处。总目录Awesome GIS
网友评论