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实现基本进制转换的方法
Jul 11 Python
Python基于tkinter模块实现的改名小工具示例
Jul 27 Python
基于Python中capitalize()与title()的区别详解
Dec 09 Python
深入浅析python 中的匿名函数
May 21 Python
windows下python安装pip图文教程
May 25 Python
Python中应该使用%还是format来格式化字符串
Sep 25 Python
用python生成1000个txt文件的方法
Oct 25 Python
python版大富翁源代码分享
Nov 19 Python
详解使用django-mama-cas快速搭建CAS服务的实现
Oct 30 Python
Python 如何操作 SQLite 数据库
Aug 17 Python
matplotlib阶梯图的实现(step())
Mar 02 Python
Python 正则模块详情
Nov 02 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警告Cannot use a scalar value as an array的解决方法
2012/01/11 PHP
smarty模板引擎之内建函数用法
2015/03/30 PHP
Smarty3配置及入门语法
2017/02/22 PHP
PHP弱类型语言中类型判断操作实例详解
2017/08/10 PHP
JAVASCRIPT IE 与 FF中兼容问题小结
2009/02/18 Javascript
JavaScript 继承详解(一)
2009/07/13 Javascript
IE bug table元素的innerHTML
2010/01/11 Javascript
浅谈JavaScript中setInterval和setTimeout的使用问题
2015/08/01 Javascript
AngularJs实现ng1.3+表单验证
2015/12/10 Javascript
javascript正则表达式中分组详解
2016/07/17 Javascript
IOS中safari下的select下拉菜单文字过长不换行的解决方法
2016/09/26 Javascript
Angular使用ng-messages与PHP进行表单数据验证
2016/12/28 Javascript
JS基于正则表达式实现的密码强度验证功能示例
2017/09/21 Javascript
Angular resolve基础用法详解
2018/10/03 Javascript
vue项目前端埋点的实现
2019/03/06 Javascript
Vue CLI3中使用compass normalize的方法
2019/05/30 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
python实现在字符串中查找子字符串的方法
2015/07/11 Python
python中使用 xlwt 操作excel的常见方法与问题
2019/01/13 Python
python小白学习包管理器pip安装
2020/06/09 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
2020/09/20 Python
python中使用.py配置文件的方法详解
2020/11/23 Python
Python Spyder 调出缩进对齐线的操作
2021/02/26 Python
深入浅析css3 中display box使用方法
2015/11/25 HTML / CSS
一波HTML5 Canvas基础绘图实例代码集合
2016/02/28 HTML / CSS
欧姆龙医疗欧洲有限公司:Omron Healthcare Europe B.V
2020/06/13 全球购物
大学生优秀的自我评价分享
2013/10/22 职场文书
致铅球运动员广播稿精选
2014/01/12 职场文书
节能环保标语
2014/06/12 职场文书
2014年民主评议党员个人总结
2014/09/24 职场文书
升学宴学生答谢词
2015/01/05 职场文书
清明扫墓感想
2015/08/11 职场文书
HR在给员工开具离职证明时,需要注意哪些问题?
2019/07/03 职场文书
iPhone13 Pro外观确定,升级4800万镜头,4月20日发新品
2021/04/15 数码科技
Python requests用法和django后台处理详解
2022/03/19 Python
Mac电脑OS系统下安装Nginx的详细教程
2022/04/14 Servers