python热力图实现简单方法


Posted in Python onJanuary 29, 2021

在我们想要对不同变量进行判断的时候,会分析其中的之间的联系。这种理念同样也被用在实例生活中,最常见到的是做一个地理的热力图。很多人对画热力图的方法不是很清楚,我们可以先装好相关的工具,了解一些使用参数,然后在实例中进行画热力图的实例体验,下面就来看看具体的方法吧。

1.导入相关的packages

import seaborn as sns
%matplotlib inline
sns.set(font_scale=1.5)

2.参数

vmax:设置颜色带的最大值

vmin:设置颜色带的最小值

cmap:设置颜色带的色系

center:设置颜色带的分界线

annot:是否显示数值注释

fmt:format的缩写,设置数值的格式化形式

linewidths:控制每个小方格之间的间距

linecolor:控制分割线的颜色

cbar_kws:关于颜色带的设置

mask:传入布尔型矩阵,若为矩阵内为True,则热力图相应的位置的数据将会被屏蔽掉(常用在绘制相关系数矩阵图)

3.实例

用Python生成heatmap比较简单,导入googlmap然后把经纬度plot在地图上就可以了。最后把heatmap生成为一个html文件,可以放大和缩小。

import gmplot       # plot the locations on google map
import numpy as np    # linear algebra
import pandas as pd    # data processing, CSV file I/O (e.g. pd.read_csv())
import matplotlib.pyplot as plt # data visualization
import seaborn as sns    # data visualization
df = pd.read_csv("data.csv")
df = pd.DataFrame(df)
df_td = pd.read_csv("datacopy.csv")
df_td = pd.DataFrame(df_td)
# print df.dtypes
print (df.shape)
print (df_td.shape)
def plot_heat_map(data, number):
  latitude_array = data['INTPTLAT'].values
  latitude_list = latitude_array.tolist()
  print(latitude_list[0])
  Longitude_array = data['INTPTLONG'].values
  longitude_list = Longitude_array.tolist()
  print(longitude_list[0])
  # Initialize the map to the first location in the list
  gmap = gmplot.GoogleMapPlotter(latitude_list[0], longitude_list[0], 10)
  # gmap.scatter(latitude_list, longitude_list, edge_width=10)
  gmap.heatmap(latitude_list, longitude_list)
  # Write the map in an HTML file
  # gmap.draw('Paths_map.html')
  gmap.draw('{}_Paths_map.html'.format(number))
plot_heat_map(df,'4')

内容扩展:

实例扩展1

# -*- coding: utf-8 -*-
from pyheatmap.heatmap import HeatMap
import numpy as np
N = 10000
X = np.random.rand(N) * 255 # [0, 255]
Y = np.random.rand(N) * 255
data = []
for i in range(N):
 tmp = [int(X[i]), int(Y[i]), 1]
 data.append(tmp)
heat = HeatMap(data)
heat.clickmap(save_as="1.png") #点击图
heat.heatmap(save_as="2.png") #热图

实例扩展2

import matplotlib.pyplot as plt
import matplotlib.cm as cm
from matplotlib.colors import LogNorm
import numpy as np
x, y = np.random.rand(10), np.random.rand(10)
z = (np.random.rand(9000000)+np.linspace(0,1, 9000000)).reshape(3000, 3000)
plt.imshow(z+10, extent=(np.amin(x), np.amax(x), np.amin(y), np.amax(y)),
  cmap=cm.hot, norm=LogNorm())
plt.colorbar()
plt.show()

以上就是python热力图实现简单方法的详细内容,更多关于python热力图的原理实现的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python根据出生日期返回年龄的方法
Mar 26 Python
python中list列表的高级函数
May 17 Python
go和python变量赋值遇到的一个问题
Aug 31 Python
Python cookbook(数据结构与算法)同时对数据做转换和换算处理操作示例
Mar 23 Python
Python实现的tcp端口检测操作示例
Jul 24 Python
pycharm 实现显示project 选项卡的方法
Jan 17 Python
python dict 相同key 合并value的实例
Jan 21 Python
python numpy 反转 reverse示例
Dec 04 Python
python通过对字典的排序,对json字段进行排序的实例
Feb 27 Python
Python标准库shutil模块使用方法解析
Mar 10 Python
使用openCV去除文字中乱入的线条实例
Jun 02 Python
Python WSGI 规范简介
Apr 11 Python
Ubuntu20.04环境安装tensorflow2的方法步骤
Jan 29 #Python
python3定位并识别图片验证码实现自动登录功能
Jan 29 #Python
python中numpy数组与list相互转换实例方法
Jan 29 #Python
详解Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
Jan 29 #Python
Python爬虫获取op.gg英雄联盟英雄对位胜率的源码
Jan 29 #Python
python中spy++的使用超详细教程
Jan 29 #Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
Jan 29 #Python
You might like
「OVERLORD」动画重要删减!雅儿贝德的背叛?至尊猎杀队结成
2020/04/09 日漫
PHP与SQL注入攻击[二]
2007/04/17 PHP
Ajax+PHP快速上手及简单应用说明
2013/07/24 PHP
php下获取http状态的实现代码
2014/05/09 PHP
Thinkphp模板标签if和eq的区别和比较实例分析
2015/07/01 PHP
PHP连接MySQL数据库的三种方式实例分析【mysql、mysqli、pdo】
2019/11/04 PHP
25个好玩的JavaScript小游戏分享
2011/04/22 Javascript
jquery获取颜色在ie和ff下的区别示例介绍
2014/03/28 Javascript
自写的jQuery异步加载数据添加事件
2014/05/15 Javascript
jquery显示隐藏input对象
2014/07/21 Javascript
JS获取客户端IP地址、MAC和主机名的7个方法汇总
2014/07/21 Javascript
jquery easyUI中ajax异步校验用户名
2016/08/19 Javascript
angularJS利用ng-repeat遍历二维数组的实例代码
2017/06/03 Javascript
再谈Angular4 脏值检测(性能优化)
2018/04/23 Javascript
JS实现select选中option触发事件操作示例
2018/07/13 Javascript
解决layui table表单提示数据接口请求异常的问题
2019/09/24 Javascript
js实现淘宝首页的banner栏效果
2019/11/26 Javascript
Vue 解决父组件跳转子路由后当前导航active样式消失问题
2020/07/21 Javascript
[02:23]1个至宝=115个英雄特效 最“绿”至宝拉比克“魔导师密钥”登场
2018/12/29 DOTA
Python检测网站链接是否已存在
2016/04/07 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
Python元组常见操作示例
2019/02/19 Python
Python 利用高德地图api实现经纬度与地址的批量转换
2019/08/14 Python
python如何通过pyqt5实现进度条
2020/01/20 Python
tensorflow使用CNN分析mnist手写体数字数据集
2020/06/17 Python
matplotlib制作雷达图报错ValueError的实现
2021/01/05 Python
高级3D打印市场:Gambody
2019/12/26 全球购物
信息技术专业大学生个人的自我评价
2013/10/05 职场文书
行政办公室岗位职责
2014/03/18 职场文书
会计专业求职信
2014/08/10 职场文书
工程资料员岗位职责
2015/04/13 职场文书
公司酒会主持词
2015/07/02 职场文书
推广普通话宣传标语口号
2015/12/26 职场文书
nginx部署多前端项目的几种方法
2021/05/25 Servers
使用scrapy实现增量式爬取方式
2022/06/21 Python
Win11 25163.1010更新补丁KB5016904推送,测试服务验证管道(附更新修复汇总)
2022/07/23 数码科技