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 相关文章推荐
利用PyInstaller将python程序.py转为.exe的方法详解
May 03 Python
python实战教程之自动扫雷
Jul 13 Python
python url 参数修改方法
Dec 26 Python
将数据集制作成VOC数据集格式的实例
Feb 17 Python
Python Opencv 通过轨迹(跟踪)栏实现更改整张图像的背景颜色
Mar 09 Python
django实现将后台model对象转换成json对象并传递给前端jquery
Mar 16 Python
jupyter notebook运行命令显示[*](解决办法)
May 18 Python
如何用python处理excel表格
Jun 09 Python
python语言是免费还是收费的?
Jun 15 Python
利用Python实现字幕挂载(把字幕文件与视频合并)思路详解
Oct 21 Python
详解tensorflow之过拟合问题实战
Nov 01 Python
python全栈开发语法总结
Nov 22 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
PHP json_decode函数详细解析
2014/02/17 PHP
Codeigniter操作数据库表的优化写法总结
2014/06/12 PHP
Firefox 无法获取cssRules 的解决办法
2006/10/11 Javascript
namespace.js Javascript的命名空间库
2011/10/11 Javascript
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
2014/02/20 Javascript
js通过location.search来获取页面传来的参数
2014/09/11 Javascript
使用控制台破解百小度一个月只准改一次名字
2015/08/13 Javascript
js小数计算小数点后显示多位小数的实现方法
2016/05/30 Javascript
jquery模拟多级复选框效果的简单实例
2016/06/08 Javascript
详解vue数组遍历方法forEach和map的原理解析和实际应用
2018/11/15 Javascript
Vue学习笔记之计算属性与侦听器用法
2019/12/07 Javascript
详解vite2.0配置学习(typescript版本)
2021/02/25 Javascript
关于Django显示时间你应该知道的一些问题
2017/12/25 Python
python使用pycharm环境调用opencv库
2018/02/11 Python
从列表或字典创建Pandas的DataFrame对象的方法
2019/07/06 Python
nginx黑名单和django限速,最简单的防恶意请求方法分享
2019/08/09 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
2020/04/01 Python
虚拟环境及venv和virtualenv的区别说明
2021/02/05 Python
python数据抓取3种方法总结
2021/02/07 Python
CSS3 中filter(滤镜)属性使用详解
2020/04/07 HTML / CSS
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
YSL圣罗兰美妆美国官网:Yves Saint Lauret US
2016/11/21 全球购物
美国电视购物:QVC
2017/02/06 全球购物
美国医疗用品、医疗设备和家庭保健用品商店:Medical Supply Depot
2018/07/08 全球购物
SQL Server里面什么样的视图才能创建索引
2015/04/17 面试题
公务员职务工作的自我评价
2013/11/01 职场文书
单位刻章介绍信范文
2014/01/11 职场文书
公益广告宣传方案
2014/02/28 职场文书
如何写好自荐信
2014/04/07 职场文书
2014四风问题对照检查材料范文
2014/09/15 职场文书
安全生产标语大全
2014/10/06 职场文书
质量整改报告范文
2014/11/08 职场文书
保护环境的宣传语
2015/07/13 职场文书
2016年父亲节寄语
2015/12/04 职场文书
教你使用Pandas直接核算Excel中快递费用
2021/05/12 Python