这是【GISer入门】知识星球密友的投稿,很不错,分享给大家。
做国内,为了数据保密的原因,国家测绘地理信息局规定,凡是公开对外提供服务的在线地图都必须使用保密插件做一次非线性坐标转换,将原始WGS84坐标系的数据转换为GCJ02坐标系(俗称火星坐标系),而百度在火星坐标系的基础上又做了一次偏移,形成了其自身的百度09坐标系,于是从互联网上下载、爬取的数据常用的坐标系有这么三大类:WGS84、GCJ02、BD09(从国外渠道下载的大多是WGS84,从高德、腾讯系下载的数据是火星坐标系GC02,从百度系下载的数据为百度坐标系BD09)
在平常的工作学习中,由于数据来源的不同,数据间坐标系的相互转换非常麻烦,之前Wandergis分享了一套 百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系互转的代码(http://cnodejs.org/topic/564c0a27e4766d487f6fe38d),但对于不懂开发的童鞋来说,我们只想使用现成的工具,有吗?
还真有。
极海(Geohey)做了一个三者之间坐标互相转换的QGIS插件,支持点、线、面、多点、多线、多面,试验了下,效果还不错。具体使用方法如下:
1. 打开QGIS,在菜单【插件】中选择【管理并安装插件】
配置完成后,我们试试效果如何。
首先使用百度POI下载工具(在【GISer入门】知识星球中有分享)下载北京的大学数据,加载到QGIS中,效果如下图所示(重点看北师大和北邮)
可以看到,原本在学院路附近的两个点,跑到了北三环以外(地图使用的是 Stamen’s Toner底图,坐标系为WGS84 )。接下来我们使用baidu转wgs84工具做下处理,于是错误得到纠正,回归至正确位置。