heatmap热力图

heatmap 热力图

热力图在实际中常用于展示一组变量的相关系数矩阵,在展示列联表的数据分布上也有较大的用途,通过热力图我们可以非常直观地感受到数值大小的差异状况。heatmap的API如下所示:

下面将演示这些主要参数的用法,第一件事还是先导入相关的packages。

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

 次演示采用的数据集是Seaborn中内置的flights航班数据集

#导入数据集后按年月两个维度进行数据透视
data=sns.load_dataset("flights")\.pivot("month","year","passengers") 
data.head() 

如上图所示,dataframe中的数据代表了1949年-1960年每个月的航班乘客数量,接下来热力图就隆重登场啦!

sns.set_context({"figure.figsize":(8,8)})
sns.heatmap(data=data,square=True) 
#可以看到热力图主要展示的是二维数据的数据关系
#不同大小的值对应不同的颜色深浅

 

热力图的右侧是颜色带,上面代表了数值到颜色的映射,数值由小到大对应色彩由暗到亮。从上面的heatmap中我们可以得到两层信息,一是随着时间的推移,飞机的乘客数量是在逐步增多的,二是航班的乘坐旺季在七月和八月份。下面就具体的参数进行演示。

vmax:设置颜色带的最大值
vmin:设置颜色带的最小值
 

sns.heatmap(data=data,vmin=200,vmax=500)

 

可以看到右侧的颜色带最大最小值变了,而heatmap中颜色映射关系也会随之调整,将本图和上面的图进行对比便一目了然。

cmap:设置颜色带的色系

sns.heatmap(data=data,cmap="RdBu_r")

 

好像变好看了?

center:设置颜色带的分界线

sns.heatmap(data=data,cmap="RdBu_r",center=300)

 

细心的朋友可以察觉到颜色带上色彩两级的分界线变成了300

annot:是否显示数值注释

sns.heatmap(data=data,annot=True,cmap="RdBu_r")

 

 

怎么回事?乱码了吗?其实数值注释默认显示的是科学记数法的数值,我们得把数值进行格式化,这就用到了下面的参数。

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

sns.heatmap(data=data,annot=True,fmt="d",cmap="RdBu_r")
#foramt为int类型

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

sns.heatmap(data=data,annot=True,fmt="d",linewidths=0.3,cmap="RdBu_r") 
#可以看到每个小方格之产生了间隙

 

linecolor:控制分割线的颜色

sns.heatmap(data=data,annot=True,fmt="d",linewidths=0.3,linecolor="grey",cmap="RdBu_r")
#原来的白色间隙变成了灰色间隙

 

cbar_kws:关于颜色带的设置

sns.heatmap(data=data,annot=True,fmt="d",cmap="RdBu_r",cbar_kws={"orientation":"horizontal"}) 
#横向显示颜色帮

 

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

import numpy as np 
#随机生成一个200行10列的数据集 
data_new = np.random.randn(200,10) 
#求出这个数据集的相关系数矩阵 corr = np.corrcoef(data_new,rowvar=False) 
#以corr的形状生成一个全为0的矩阵 
mask = np.zeros_like(corr)
#将mask的对角线及以上设置为True
#这部分就是对应要被遮掉的部分mask[np.triu_indices_from(mask)] = True
with sns.axes_style("white"):sns.heatmap(corr, mask=mask, vmax=0.3, annot=True,cmap="RdBu_r")

 

如果大家对上面的代码流程不大了解,可以把mask打印出来看看

 

参照mask和上面绘制的图,应该就很容易理解了,mask中为1的部分,就是要被盖掉的部分。演示到此为止,想更深入的学习可以自行查阅官方文档! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/26804.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

即时聊天系统(IM)发送文件语音视频的两种方式比较

一般情况发送消息,把消息通过流发送给接收方{"MessageBody": "消息内容"},但是作为聊天系统这样发送消息存在两个问题:1,接收方不知道如何解析消息,消息是文本还是图片,语音&#xff0…

用腾讯即时通讯IM和实时音视频实现陪玩系统源码的语音通话功能

在陪玩系统源码中,用户之间主要的交流方式就是语音通话,实时互动性的语音通话能让人产生面对面交谈的感觉,所以在陪玩系统源码中,语音通话功能的开发非常重要,今天我们就一起来看看如何用腾讯即时通讯IM和实时音视频实…

Windows实时视频通话功能实现流程(实时视频系列四)

实时视频通话系列第四篇。上一篇我们介绍了在Windows环境下如何集成即构音视频SDK,回顾《Windows实时视频通话SDK集成指引》,这一篇将介绍视频直播功能实现流程。 还是以 2 人间的实时视频为例,主要流程如下: 请注意&#xff…

第三篇,私有化部署微信的语音电话,视频聊天IM聊天APP开发源码

前面发布两篇文章,有需要的朋友可以回头看一下,希望可以帮到大家的学习和使用。程序采用了uniapp开发,后端采用PHP,数据库采用MySQL的,程序代码开源,可任意二次开发部署等。 计划实现的功能列表 1、发布消…

Windows语音通话SDK集成及功能实现(实时语音通话四)

实时语音通话系列文章四。本篇讲述Windows环境下集成即构科技语音通话SDK,实现语音通话功能流程。 一、SDK集成指引 1、准备环境 请确保开发环境满足以下技术要求: Visual Studio 2013以上版本 Windows7、Windows8、Windows10或以上版本 麦克风、摄像…

微信原生组件|基于小程序实现音视频通话

1 微信小程序原生推拉流组件功能简介 本文将介绍如何使用微信小程序原生推拉流组件 <live-pusher> 和 <live-player> 进行推拉流&#xff0c;快速实现一个简单的实时音视频通话。 由于微信小程序原生推拉流组件使用起来比较复杂&#xff0c;推荐开发者使用即构封…

Python利用微软Azure免费的语音合成TTS源码分享

我敢保证,用过微软的语音合成后,你就会发现这是世界上最好的语音合成软件。99.99%接近人声自然流程。语调也非常自然,结合其独特的sml标记语言,合成过程中可控制主播声色和音调,以及停顿等各种的内容。 再多的介绍,自己可以百度去了解,本文讲解如何使用免费的方法合成语…

【新知实验室--音视频通话】腾讯云TRTC-实时音视频---多人会议视频通话SDK基础搭建

&#x1f996;我是Sam9029&#xff0c;一个前端 Sam9029的CSDN博客主页:Sam9029的博客_CSDN博客-JS学习,CSS学习,Vue-2领域博主 &#x1f431;‍&#x1f409;&#x1f431;‍&#x1f409;恭喜你&#xff0c;若此文你认为写的不错&#xff0c;不要吝啬你的赞扬&#xff0c;求收…

微软MFC下做speech sdk语音识别,消息响应的版本

网上虽然有很多语音识别的教程&#xff0c;但是很多是却少一些部分&#xff0c;笔者在综合了几篇之后&#xff0c;做成功了语音识别&#xff0c;下面是教程。 网上的语音识别分成几种&#xff0c;把语音识别消息放入队列中的是一种&#xff0c;笔者认为这个效率比较高&#xf…

腾讯云TRTC服务实现小程序语音/视屏会议

腾讯云TRTC服务的入门 TRTC 是腾讯云主打全平台互通的多人音视频通话和低延时互动直播解决方案。TRTC服务有多种客户端的支持&#xff0c;对于IOS、Android、React native等都支持的比较好&#xff0c;我们主要在于 IOS、Android、Web三端进行处理&#xff0c;其中 TRTC Web S…

【VS开发】【智能语音处理】Windows下麦克风语音采集

简介 这是我很早以前的大学毕业设计,忽然间找到贴出来以纪念自己的纯真年代...但是因为CSDN不给面子所以导致短短的一篇文章贴了足足7次..他老提时说文章超过了64K,老大,拜托,那是算上了里面的图片大小吧...:-( 本文简单介绍了声卡的工作原理 , 录音的原理以及数字音频的基本知…

【实时语音转文本】PC端实时语音转文本(麦克风外音系统内部音源)

语音转文字这个功能可以应用在视频动态字幕&#xff0c;语音快速输入&#xff0c;实时记录通话内容&#xff0c;高级应用可以在人工智能&#xff0c;语音识别&#xff0c;智能助手方面&#xff0c;还需要一点机器学习可以做出一些好玩的东西&#xff0c;比如PC端AI助理&#xf…

使用微软的语音识别引擎Microsoft Speech API进行语音控制

以下代码来自&#xff1a;http://mmcheng.net/zh/imagespirit/ 本人仅作提取&#xff1a; SREngine语音识别引擎封装类&#xff1a; #pragma once/************************************************************************/ /* Notice: this project is used to support sp…

微软语音合成(tts)服务申请和调用

1、申请账户&#xff1a; https://azure.microsoft.com/zh-cn/free/ 这里有个视频教程&#xff0c;根据此完成申请流程&#xff1a; https://www.bilibili.com/video/BV15a4y1W7re?vd_sourcebf07f28d37849885d215dc3aea189eba 申请完成后&#xff0c;就可以到这里申请资源&am…

英超引入 AI 球探,寻找下一个足球巨星

By 超神经 内容提要&#xff1a;球探对于很多人来说是一个略显神秘的群体&#xff0c;他们对一个球队的建设和发展至关重要。为了提高球探的工作效率&#xff0c;英超伯恩利足球俱乐部最近启用了 AI 球探。 关键词&#xff1a;AI 球探 计算机视觉 姿态识别 最近&#xff0c;中国…

通过whoscored网站对转会球员的评分来比较五大联赛水平高低

我是一个八年级的学生&#xff0c;上学期学习了Python和包括标准差在内的数据统计方法。参考“怕砍不留名”在soccer.hupu.com上的帖子&#xff0c;并且在爸爸的指导下我尝试对欧洲五大足球联赛&#xff08;英超、德甲、西甲、意甲、法甲&#xff09;水平高低做一个比较。 五大…

看卡塔尔世界杯,diff一下足球比赛与软件开发

diff一下足球比赛与软件开发 吐槽世界杯E组&#xff01;类比软件开发与足球比赛教练与架构师的作用 新技术——半自动越位技术世界杯冠军 吐槽世界杯E组&#xff01; 最近博主看了多场世界杯比赛&#xff0c;看的我心力交瘁&#xff0c;欲哭无泪。 从日本与哥斯达黎加那场比赛开…

一个值得关注的技术公众号「腾讯云开发者」

今天向大家推荐的是腾讯云技术社区的公众号&#xff0c;是腾讯官方推出的技术知识分享阵地&#xff0c;每周公开腾讯最新的技术工程方案&#xff08;如微信、健康码、王者荣耀等知名业务的技术架构&#xff09;、ChatGPT 等行业前沿热点解读、研发经验和工作方法等干货&#xf…

踩坑小总结

本来想总结一下自己工作到现在踩过的坑&#xff0c;实在是太多了&#xff0c;自己之前也年轻不懂事&#xff0c;没有记录的习惯&#xff0c;想到多少写多少吧。 1.前、后端分离框架&#xff1a;刚进入工作的时候采用的是easyuissh的框架&#xff0c;前后端一体&#xff0c;后来…

如何调教一个定制化的ChatGPT私人助理,接入自家知识库

大家好&#xff0c;欢迎来到 Crossin的编程教室 &#xff01; 我在之前的文章里介绍过&#xff0c;如何利用 OpenAI 开放的 API&#xff0c;将 ChatGPT 接入自己开发的程序&#xff1a; 把 ChatGPT 加到你自己的程序里 当时开放的模型还是 text-davinci-003。 文章发布后没多久…