背景
最近在使用folium处理一些工作上的事情,这过程中发现一些GPS坐标数据的获取和置换不是太方便,尤其是坐标置换,做了一些工作进行了GPS坐标数据秘坐标置换方向的封装。
GPS坐标类封装的过程中,发现一些常用的GPS坐标的查取比较麻烦,需要找到专用的可拾取坐标的网站,于是想起把一些常用的地市直接封装在GPS坐标模块中,以便随时取用。
GPS坐标的值的拾取
基于腾讯 or 高德地图的坐标拾取功能,将常用地市的GPS坐标整理成一个字典。坐标的拾取基本遵照以下原则:
- 地图有图点标记的,以图点标记位置为准。如下
- 地图无图点标记的,以文本位置为准,放大地图后锚定在公园或者其它显著性地理村志上。如下
以上取坐标的方法,均为手动拾取,精度不高,基本够用。
GPS坐标整理
以上方法拾取到的GPS坐标数据,整理成一个GPS坐标类字典,如下:
_常用坐标字典: dict = {'哈尔滨市': GPS坐标类(126.5350, 45.8020, GPS坐标系类型.腾讯地图坐标),
'长春市': GPS坐标类(125.3238, 43.8107, GPS坐标系类型.腾讯地图坐标),
'沈阳市': GPS坐标类(123.4644, 41.6688, GPS坐标系类型.腾讯地图坐标),
'北京市': GPS坐标类(116.4111, 39.8971, GPS坐标系类型.腾讯地图坐标),
'呼和浩特市': GPS坐标类(111.7529, 40.8471, GPS坐标系类型.腾讯地图坐标),
'乌鲁木齐市': GPS坐标类(87.6132, 43.8226, GPS坐标系类型.腾讯地图坐标),
'石家庄市': GPS坐标类(114.5160, 38.0373, GPS坐标系类型.腾讯地图坐标),
'天津市': GPS坐标类(117.2021, 39.0874, GPS坐标系类型.腾讯地图坐标),
'太原市': GPS坐标类(112.5494, 37.8683, GPS坐标系类型.腾讯地图坐标)}
坐标使用方法
整理成常用坐标字典后的GPS坐标数据,提供了两种查取方法:
- 方法一,直接通过成员符号获取
print(常用坐标.上海市)
- 方法二,通过关键字查询获取
上海坐标 = 常用坐标.查询坐标('上海')
if 上海坐标.有效:
print(上海坐标.经度)
else:
print('坐标不存在')
通过查询坐标的方法,也可以获取到指定关键字地市的GPS坐标数据。如果查询不到,则返回一个空的GPS坐标类对象,可能通过对象的有效性判断是否获取到了有效的坐标值。
坐标数量
通过以上方法拾取和整理的常用地市坐标数量,共352个。
常用坐标分布热力图
有了以上的GPS坐标资源,我们就可以将这些GPS坐标以热力图的形式打点到地图上了,以观察其分布趋势。
# -*- coding:UTF-8 -*-
# region 引入必要依赖
from selfPyTools.mapModule import *
# endregion
# 准备一个地图类对象,指定添加高等地图 智图GeoQ 的瓦片图
地图 = 地图类().添加瓦片.高德地图().智图GeoQ().地图
# 在地图上添加一个热力图的图层
热力图 = 地图.添加热力层('常用地市坐标分布热力图', 默认显示=True)
# 将常用坐标字典中的坐标值,添加到热力图层中
for 城市, 坐标 in 常用坐标.常用坐标字典.items():
if 坐标.有效:
地图.添加热力点(热力图, 坐标)
# 将地图对象生成一个html的文档保存,并顺便打印这个文档
地图.支持坐标拾取.生成html(文档名='常用地市分布热力图', 目标路径='.').打开()
以上代码中,我们以高德地图 和智图GeoQ为基础,对常用地市GPS坐标进行热力图绘制,所得html地图见上方附件。
总体来说,常用坐标在中部,东部地区分布较为密集。
放大了看,一些城市分布集中地区,主要以条带状分布为主。
小结
以上就是今天分享的关于常用地市GPS坐标的拾取和热力图使用的小知识了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。