Python生成城市热力图

  • 前言
  • 1.导入数据
  • 2.提取数据
  • 3.生成热力图且保存
  • 4.打开html文件
  • 结果展示
  • 资源下载:

前言

 这是一个利用folium包将GDP.xls文件内的信息加工成热力图的示例过程

1.导入数据

导入必要的包以及将GDP数据读入,其中numpy和pandas都是处理数据时常用的包

folium是地图包,提供绘制热力图以及链接到地图上的函数
GDP文件中有我们需要的城市名、城市经纬度和城市GDP和人数

import numpy as np
import pandas as pd
import folium #地图信息
from folium.plugins import HeatMap
import webbrowser #用于生成网页显示
data = pd.read_excel(r"GDP.xls") #使用 pandas 库读入待处理的 Excel 文件

2.提取数据

将data中我们需要的数据提取出来,在这个例子里我们一共处理100个城市的平均GDP,由于在文件中只有人数和城市总GDP,我们需要将其转化为人均GDP

cityNum = 100 # 共分析100座城市
lat = np.array(data["LAT"][0:cityNum]) # 获取纬度值
lon = np.array(data["LON"][0:cityNum]) # 获取经度值
pop = np.array(data["POP"][0:cityNum], dtype=float) # 获取人口数,转化为浮点型
gdp = np.array(data["GDP"][0:cityNum], dtype=float) # 获取 GDP,转化为浮点型
gdpAverage = np.array(data["GDP_Average"][0:cityNum],dtype=float) # 获取人均 GDP,转化为浮点型

3.生成热力图且保存

第一行将一个城市的经纬度和平均GDP制成一个列表,这个平均GDP就是我们在制作热力图时的权重

folium.Map函数将一张地图导入进来,location为地图中心位置,zoom_start为缩放比,这个数值越大,放大程度越高

HeatMap(data).add_to(mapData)这行代码将我们的热力图添加到了地图中

最后保存我们的热力图html文件,到时候打开就可以了

# 将数据制作成[纬度, 经度, 权重]的形式
data = [[lat[i], lon[i], gdpAverage[i]] for i in range(cityNum)]
# 生成地图数据,初始缩放程度为6倍
mapData = folium.Map(location=[35, 110], zoom_start=6)
# 将热力图添加到地图里
HeatMap(data).add_to(mapData)
# 将结果保存为 html(网页)文件
filePath = r"GDP_HeatMap.html"
mapData.save(filePath)

4.打开html文件

# 使用默认浏览器打开网页
webbrowser.open(filePath)

结果展示

资源下载:

资源下载:热力图原始资源

Python生成城市热力图相关推荐

  1. python echarts城市热力图_ECharts-热力图实例

    //用ajax获取所需要的json数据 $.get("../../../mall/queryPageWtSrPost.do", {'sdate': sdate,'edate': e ...

  2. python画城市热力图_python 在百度地图上画热力图

    先上效果图 上海市2010年第六次全国人口普查 全国人口普查10年一次,不要问我为什么不找2017年,我也没办法,摊手- 思路 申请使用百度地图API密钥 数据准备 分析数据 把地区改编成经纬度 画图 ...

  3. python echarts城市热力图_python如何画热力图?

    其实没有那么麻烦,就使用matplotlib就可以了,plt.matshow(data)然后再加一个color bar基本上完事.官方案例: import numpy as np import mat ...

  4. python echarts城市热力图_echarts绘制各省、市、区的热力图

    1.下载全国地图数据 我的github地址:全国地图数据包 2.引入echarts和jquery 3.html代码 4.js代码 var myChart = echarts.init(document ...

  5. python城市热力图_国庆去哪里人最多?用 Python 抓取的热力图告诉你!

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 国庆倒计时1天,我们即将迎来8天的小长假,相信很多小伙伴们已经提前规划国庆去哪儿?你是选择去 ...

  6. 解决帆软中不能制作城市热力图的问题

    1 问题描述 想依照这样的表制作一张城市热力图, 字段如下: 城市名 值 重庆 100 长春 22 广州 52 但在帆软中只能按照省份,或者一个省份下的城市制作热力图,而不能选择全部城市进行匹配 2 ...

  7. 2021-07-08使用python生成图表

    使用python生成图表 python数据可视化神器–pyecharts from pyecharts.charts import Bar from pyecharts import options ...

  8. 使用OpenCV和Python生成视频条形码

    使用OpenCV和Python生成视频条形码 1. 效果图 2. 原理 2.1 步骤 2.2 项目结构 3. 源码 参考 这篇博客将演示如何使用Python + OpenCV生成视频条形码. 生成视频 ...

  9. python生成订单号或生成任意序列

    python生成订单号或生成任意序列 示例代码: import time# 生成订单号 def get_order_code():# 年月日时分秒+time.time()的后7位order_no = ...

最新文章

  1. 研究:即便是最好的人脸识别算法也会受到口罩干扰
  2. 弄了个调试呼叫中心用的小机器
  3. WebService在开发中的实际问题
  4. javascript+dom
  5. 比较两个二维数组是否相等
  6. iOS开发-iPad侧边栏Tab选项卡切换
  7. 这些 JS 中强大的操作符,总有几个你没听说过
  8. 机器学习Tensorflow基础知识、张量与变量
  9. zookeeper的集群配置
  10. [人工智能]手语识别转文字落地深圳医院,厉害了我的腾讯
  11. 在jetson tx2上使用pascal VOC0712训练caffe-ssd
  12. Centos7 Kubernetes(k8s) 开发服务器(单服务器)部署 mariadb/mysql 数据库
  13. Vue 官方团队的 57 个技术分享,你看懂了几个?
  14. 安卓工作室 日志设置
  15. Java - 谈一谈测试驱动开发(TDD)的好处以及你的理解。
  16. 网店管家客户端 3.1 安装上去 不能运行 提示找不到指定模块
  17. VC编程使计算机休眠
  18. 002 离散时间傅里叶分析
  19. linux游戏盒子恢复默认,dnf多玩补丁_多玩dnf盒子我用了补丁,怎么还原成默认?具体点,......
  20. 五、服务总线 - Bus

热门文章

  1. java基于微信小程序的在线作业提交批改系统 uniapp 小程序
  2. 研报精选230215
  3. Java(springboot)连接MongoDB,终于成功啦T_T【呸】
  4. 佳能R5专业微单相机介绍
  5. 机器学习入门之莺尾花训练
  6. ubuntu安装ActiveMQ
  7. 【小米8手机的状况】
  8. 脑机接口的过去、现在与未来
  9. [软件工程 复习] 记录
  10. 微信公众号花式排版技巧分享