ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

新手必看:geo文件解析失败?三步教你搞定地图定位乱码

新手必看:geo文件解析失败?三步教你搞定地图定位乱码

geo文件解析卡壳?定位跑偏?别急。 这篇教你3步搞定。 直接抄作业。

刚入行做地图项目,被个后缀.geo的文件坑惨了。

看着几行代码,鼠标一点,直接打不开。

心态崩了。

其实这玩意儿,就是经纬度集合。

很多新手一上来就想着买破解版软件。

纯属交智商税。

今天聊点实在的。

怎么把.geo文件读出来,画到地图里。

还不出错。

第一步:检查编码格式。

90%的问题出在这。

打开你的文本编辑器。

Win10自带的Notepad太弱。

用VS Code,或者Notepad++。

左上角看编码。

如果是GBK,大概率要转。

地图数据标准是UTF-8。

点“编码”->“转为UTF-8”。

保存一下。

再打开看看。

这时候,乱码应该消停了。

别急着跑代码。

先看一眼前几行数据。

WKT格式通常是 POINT(116.4 39.9) 这种。

如果显示成一堆方块。

那就是编码没转对。

或者,里面混了全角符号。

手动检查一下空格和逗号。

这是最磨人的地方。

第二步:用QGIS加载。

别用ArcGIS,对新手不友好。

去下载QGIS,免费开源。

装好后,点左上角“层”->“添加图层”->“添加矢量图层”。

文件类型选“GeoJSON”或者“Text”。

注意,.geo文件本质是WKT文本。

在QGIS里,它不一定能直接识别为矢量。

这时候要用“矢量”->“导入/导出”->“另存要素为...”。

不对,这路走不通。

换个思路。

直接用Python脚本。

或者,先把数据转换成GeoJSON。

用在线转换工具。

搜“WKT to GeoJSON Converter”。

把你文本里的数据,复制粘贴进去。

点击转换。

下载一个.json文件。

现在,QGIS就能直接拖进去了。

图层树里会出现一个点图层。

双击预览,能看到点位置没。

如果点在地球外面。

那就是坐标系统乱了。

第三步:修正坐标系。

这是最坑的一步。

很多.geo文件里,没写EPSG代码。

默认可能是WGS84。

也可能是CGCS2000。

在中国地图,必须用EPSG:4490或者EPSG:4547。

在QGIS里,右键图层->“属性”->“源坐标系”。

如果是未知。

手动指定为WGS84。

然后,右键图层->“导出”->“保存要素为...”。

在“源层坐标系”和“目的地层坐标系”里,都选上对应的EPSG号。

关键来了。

保存格式选GeoPackage (.gpkg) 或者 GeoJSON。

文件名随便起。

点OK。

新生成的图层,右键刷新。

这时候,点应该乖乖落到地图上。

如果还飘着。

那就是原始数据精度丢了。

看看小数点位数,至少得6位以上。

4位数,定位都能飘到隔壁村。

别抱怨工具。

先怀疑数据源。

我有一次,客户给的数据,经纬度反了。

经度在前,纬度在后。

结果点全飘在太平洋中间。

手动换一下顺序。

问题瞬间解决。

所以,geo文件解析这活儿。

三分靠工具,七分靠细心。

别嫌麻烦。

手动核对两个点,能救大命。

最后,提醒一下。

批量处理数据时。

记得加个异常捕获。

某一行数据格式不对。

别让程序直接崩掉。

记录日志,跳过错误行。

继续跑下一行。

这样效率最高。

别为了完美主义,耽误了进度。

差不多就行。

能看清位置,能出报告,就赢了一半。

剩下的,交给设计师。

咱们只负责把数据喂进去。

这就完事了。】

返回列表