项目场景
地图开发,友商提供的是边界Shapefile
文件,文件比较大,例如某个文件就 29.2 M
,这么大的数据,在echarts
上显示地图,前端会很卡,特别是有地图下钻的时候,体验很不好,所以最好进行压缩下。
这里会用到 QGIS
,看完可以学习到2个主要的小知识:
- 1、
Shapefile
文件导出GeoJson
格式文件数据,供高德得图
、百度地图
、echarts
使用 - 2、地图
poi
数据压缩
解决方法
在 QGIS
的工具箱里找到 简化
工具,如下:
双击 简化
工具,如下,容差设置为 0.001
(此数值可以自行探讨,值过大,会造成地图失真),点击运行
会生成一个 简化结果
的图层(名称可自行在上面操作步骤自行更改),如下:
导出 GeoJson
格式文件
此步骤要注意的是要配置下存储路径,然后直接点 OK
就行了
结果说明
项目中一个 29.2 M
的文件,压缩后,6.2 M
,用 QGIS
编辑删除一些无用的属性后,2.3 M
,这样的大小已经比较适合前端开发使用了。
QGIS
,除了可以对Shapefile
格式文件进行压缩,也可以直接对 GeoJson
格式文件进行压缩的,步骤和上面的一样,自行玩耍了~