• 西部是真的地广人稀啊,常用地市东西分布差异明显


    背景

    最近在使用folium处理一些工作上的事情,这过程中发现一些GPS坐标数据的获取和置换不是太方便,尤其是坐标置换,做了一些工作进行了GPS坐标数据秘坐标置换方向的封装。

    GPS坐标类封装的过程中,发现一些常用的GPS坐标的查取比较麻烦,需要找到专用的可拾取坐标的网站,于是想起把一些常用的地市直接封装在GPS坐标模块中,以便随时取用。

    GPS坐标的值的拾取

    基于腾讯 or 高德地图的坐标拾取功能,将常用地市的GPS坐标整理成一个字典。坐标的拾取基本遵照以下原则:

    • 地图有图点标记的,以图点标记位置为准。如下
      地市 GPS坐标拾取位置示意图 1
      地市 GPS坐标拾取位置示意图 2

    • 地图无图点标记的,以文本位置为准,放大地图后锚定在公园或者其它显著性地理村志上。如下
      地市 GPS坐标拾取位置示意图 1
      以上取坐标的方法,均为手动拾取,精度不高,基本够用。

    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坐标系类型.腾讯地图坐标)}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    坐标使用方法

    整理成常用坐标字典后的GPS坐标数据,提供了两种查取方法:

    • 方法一,直接通过成员符号获取
    print(常用坐标.上海市)
    
    • 1

    通过常用坐标成员,可以非常方便的获取和使用GPS坐标数据

    • 方法二,通过关键字查询获取
    上海坐标 = 常用坐标.查询坐标('上海')
    if 上海坐标.有效:
        print(上海坐标.经度)
    else:
        print('坐标不存在')
    
    • 1
    • 2
    • 3
    • 4
    • 5

    通过查询坐标的方法,也可以获取到指定关键字地市的GPS坐标数据。如果查询不到,则返回一个空的GPS坐标类对象,可能通过对象的有效性判断是否获取到了有效的坐标值。

    坐标数量

    通过以上方法拾取和整理的常用地市坐标数量,共352个。

    常用坐标分布热力图

    有了以上的GPS坐标资源,我们就可以将这些GPS坐标以热力图的形式打点到地图上了,以观察其分布趋势。

    # -*- coding:UTF-8 -*-
    
    # region 引入必要依赖
    from selfPyTools.mapModule import *
    
    # endregion
    
    # 准备一个地图类对象,指定添加高等地图 智图GeoQ 的瓦片图
    地图 = 地图类().添加瓦片.高德地图().智图GeoQ().地图
    
    # 在地图上添加一个热力图的图层
    热力图 = 地图.添加热力层('常用地市坐标分布热力图', 默认显示=True)
    
    # 将常用坐标字典中的坐标值,添加到热力图层中
    for 城市, 坐标 in 常用坐标.常用坐标字典.items():
        if 坐标.有效:
            地图.添加热力点(热力图, 坐标)
    
    # 将地图对象生成一个html的文档保存,并顺便打印这个文档
    地图.支持坐标拾取.生成html(文档名='常用地市分布热力图', 目标路径='.').打开()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    以上代码中,我们以高德地图 和智图GeoQ为基础,对常用地市GPS坐标进行热力图绘制,所得html地图见上方附件。

    常用地市GPS坐标分布热力图
    常用地市GPS坐标分布热力图1
    总体来说,常用坐标在中部,东部地区分布较为密集。
    常用地市GPS坐标分布热力图2
    放大了看,一些城市分布集中地区,主要以条带状分布为主。

    小结

    以上就是今天分享的关于常用地市GPS坐标的拾取和热力图使用的小知识了。

  • 相关阅读:
    计算机视觉——两视图几何求解投影矩阵
    C++学习日记——存储持续性、作用域、链接性
    nodejs+vue+elementui+express基于体质分析的个性化健身方案生成系统与设计
    微信小程序开发校园第二课堂+后台管理系统|前后分离VUE.js在线学习网
    【LeetCode】311d:字符串的前缀分数和
    【数据结构】二叉树--堆排序
    【TorchScript】PyTorch模型转换为C++支持的模型
    js运动雏形及其相关问题和运动框架
    强化学习--多维动作状态空间的设计
    PDF或PPT中的某个图或表无损、高清的插入word里的方法,再转成pdf后放大6400%倍仍是高清图片...
  • 原文地址:https://blog.csdn.net/weixin_42148809/article/details/132777985