首页 >excel操作 > 内容

GIS热力图制作与位置大数据分析

2023年9月22日 00:21

最近有很多朋友咨询位置数据、热力图等等东西,我一一进行了解答,但是个人精力实在有限,特写一个博客进行详细技术说明,其实这个东西位置数据、百度地图POI、高德地图POI等数据爬取、存储都较为简单,热力图渲染也较为简单,只要找到了好的库就很快了。

首先,我们采用百度地图API爬取长沙市和深圳相关地区的一些POI兴趣点,技术参考:https://blog.csdn.net/suwenkun1126/article/details/78343150,这个就是使用了SQL数据库进行了存储,高德地图POI爬取:https://blog.csdn.net/qq_34464926/article/details/79128211,这些都比较简单,稍微修改即可使用,好了,闲话不多说,我们爬取一些POI点如下所示:

里面的格式我展开给大家看一下,

上面图中就是对应的经度纬度等等信息。

如果只从SQL数据或者XSL中来看,实在看不出来有什么很大的名堂,比如说某个单位特别想看一下长沙市的人口大致分布情况、长沙市的医院分布情况、长沙市的小学分布情况,这些文字就没什么意思了,那么我们就需要空间分析了,其中热力图就是最有意思的东西。

下面我们上一下热力图成果:

腾讯位置大数据热力图

深圳南山区腾讯位置大数据热力图

长沙市小学分布图

这个图就有点意思了,我们来看一下长沙市的教育资源分布情况(PS:马上小小王也要读小学了,赶紧研究一下),总体来看,小学分布最密集的地方就是开福区和雨花区、岳麓区,最贫乏的地区就是天心区(完了,小小王没得书读了)。

下面再来看一下长沙市的医院分布热力图:

长沙市医院分布热力图

从这个图可以看出,医院何药店分布密集的区域为环梅溪湖区域,五一广场到芙蓉广场。

下面我们再来看一下最劲爆的热力图—长沙市情趣用品店分布热力图:

长沙市情趣用品店分布图

这个就没啥意思了,我看了一下,分布在这几个区域:湖南第一师范对面(为什么主席母校对面有这么多情趣店?手动疑问),城南街道(这个没啥好说的),星沙部分区域,这个就没啥好说的了。

关于代码如何实现,我这里把code贴下来,供大家参考。

# coding:utf-8import osimport foliumimport numpy as npfrom folium.plugins import HeatMapimport xlrd# written by Mr wang,refer:https://blog.csdn.net/LaoChengZier/article/details/83684961# date:2019-4-1# 读取POI文本def readExel(filePath):    wb = xlrd.open_workbook(filePath)  # 打开文件    sheet1 = wb.sheet_by_index(0)  # 通过索引获取表格    length = sheet1.nrows  # 数据行数    latitude = list(map(float, sheet1.col_values(1)[1:length]))  # 批量将string字符转成float类型    longitude = list(map(float, sheet1.col_values(0)[1:length]))    num = sheet1.col_values(2)[1:length]    Latitude = np.array(latitude)    Longitude = np.array(longitude)    Num = np.array(num)    return np.hstack((Latitude.reshape(Latitude.shape[0], 1),                      Longitude.reshape(Longitude.shape[0], 1), Num.reshape(Num.shape[0], 1)))filePath = r'C:\Users\Administrator\Desktop\高德地图POI-python\长沙_QX.xls'data = readExel(filePath)m = folium.Map([26., 112.], tiles='OpenStreetMap', zoom_start=5)  # 自定义底图HeatMap(data).add_to(m)m.save(os.path.join(r'C:\Users\Administrator\Desktop\高德地图POI-python', 'MyHeatmap.html'))

这里面主要用到了一个folium库,这个库比较简单易用,推荐大家使用,在这里我自己也做一个笔记,就是这个numpy库的一维向量转置,这个不能用transposed方法,这里特别备注一下。

关于百度地图API和高德地图API爬取POI信息,由于这里面用到了我的付费账号,就不能大家了,如果有需要,可以联系qq:1044625113,如果大家有技术问题,也欢迎随时交流!

转载于:https://www.cnblogs.com/wzp-749195/p/10638536.html


郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时候联系我们修改或删除,在此表示感谢。

特别提醒:

1、请用户自行保存原始数据,为确保安全网站使用完即被永久销毁,如何人将无法再次获取。

2、如果上次文件较大或者涉及到复杂运算的数据,可能需要一定的时间,请耐心等待一会。

3、请按照用户协议文明上网,如果发现用户存在恶意行为,包括但不限于发布不合适言论妄图

     获取用户隐私信息等行为,网站将根据掌握的情况对用户进行限制部分行为、永久封号等处罚。

4、如果文件下载失败可能是弹出窗口被浏览器拦截,点击允许弹出即可,一般在网址栏位置设置

5、欢迎将网站推荐给其他人,网站持续更新更多功能敬请期待,收藏网站高效办公不迷路。

      



登录后回复

共有0条评论