热力图科普:数据可视化的利器

news2024/9/20 18:26:26

hello大家好,俺是没事爱瞎捣鼓又分享欲爆棚的叶同学!!!

日常闲扯

哎呀,第一天上完课,给俺的感觉是(热和惊喜),热是真热,从出租屋走到教学楼给我整的汗流浃背的了,然后上午班级的空调也不是很给力,所有很。。。,但也有惊喜哈,虽然我搬出来住了,不能和他们一起上课,但下课他们还是来找我了,到我这边来了,下午还帮我占了座位,还是挺惊喜开心的哈,白天也是忙碌起来了,生活也变得不那么无所事事和无聊了!好了每次介绍正文前都闲扯一段好似成了俺的习惯了哈哈哈哈!下面我们来进入正题了

进入正题

在数据科学和数据分析的世界里,热力图(Heatmap)是一种常见且强大的数据可视化工具。无论是展示数据之间的相关性,还是显示地理数据,热力图都能通过色彩的渐变来直观地呈现数据的分布和趋势。俺将带你们了解什么是热力图,如何创建它,以及它的应用场景。

什么是热力图?

热力图是一种以颜色变化为基础的图形表示形式,通常用于显示数据集中的数值大小或数据之间的关系。颜色的深浅通常代表数据的大小或强度,例如,颜色越深表示数值越大或关系越强。

热力图的基本组成部分包括:

  • 行和列:通常代表数据集的不同维度或变量。
  • 颜色编码:用来表示数值或关系的强弱,常见的颜色编码包括从浅色到深色的渐变,例如从浅黄色到深红色。

热力图的应用场景

  1. 相关性分析:在机器学习或统计分析中,热力图常用于显示特征之间的相关性。通过观察颜色的深浅,分析人员可以快速识别出哪些特征之间存在较强的线性关系,从而为模型构建提供参考。

    例如,在金融数据分析中,可以通过热力图展示不同股票的价格之间的相关性,从而帮助投资者做出更明智的投资决策。

  2. 地理数据展示:在地理信息系统(GIS)中,热力图常用于显示特定区域内的数据信息,如人口密度、气温变化、犯罪率等。通过将地理位置与颜色对应,热力图可以直观地展示出热点区域。

    例如,在流行病学研究中,热力图可以用来显示某一疾病在不同地区的传播情况,从而为防控措施提供参考。

  3. 网站分析:在用户体验设计中,热力图被用于分析用户在网页上的行为。通过颜色展示用户的点击频率或鼠标停留时间,设计师可以更好地理解用户的使用习惯,优化页面布局。

  4. 时间序列数据分析:热力图还可以用于展示时间序列数据的变化,如股票价格波动、气温变化等。通过将时间维度与颜色结合,分析人员可以清晰地看到数据随时间的变化趋势。

如何创建热力图?

创建热力图的方式有很多,常用的工具包括Python的seabornmatplotlib库、Excel、Tableau等。这样吧!我们还是用我们最喜欢的“某者荣耀”来举例子!以下是使用Python创建一个简单相关性热力图的示例:

1. 导入必要的库

首先,我们需要导入Python中用于数据处理和绘图的常用库——Pandas、Matplotlib和Seaborn。

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
  • matplotlib.pyplot:用于绘制各种图形的基础库。
  • seaborn:基于Matplotlib的高级数据可视化库,可以更加简洁地绘制复杂图形。
  • pandas:用于数据处理与分析的库,特别适合处理表格数据。
2. 设置中文显示与解决负号显示问题

由于Matplotlib默认字体不支持中文字符,所以我们需要手动设置字体以支持中文显示。同时,为了避免负号无法正确显示的问题,也需要进行相关设置。

# 设置字体为SimHei以支持中文显示
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
  • plt.rcParams['font.sans-serif'] = ['SimHei']:将字体设置为黑体(SimHei),以确保图表中的中文可以正常显示。
  • plt.rcParams['axes.unicode_minus'] = False:解决坐标轴负号显示问题。
3. 构建模拟的英雄胜率数据

接下来,我们将构建一个模拟的《王者荣耀》英雄胜率数据框,数据包含三个英雄(英雄A、英雄B、英雄C)在不同段位下的胜率。

# 模拟英雄胜率数据
data = pd.DataFrame({
    '段位': ['青铜', '白银', '黄金', '铂金', '钻石', '星耀', '王者'],
    '英雄A': [0.45, 0.50, 0.52, 0.54, 0.55, 0.56, 0.57],
    '英雄B': [0.40, 0.42, 0.48, 0.50, 0.53, 0.55, 0.60],
    '英雄C': [0.55, 0.58, 0.60, 0.63, 0.65, 0.67, 0.70]
})
  • 段位:表示《王者荣耀》中的不同段位。
  • 英雄A英雄B英雄C:表示三个不同英雄在不同段位下的胜率数据。
4. 设置数据索引

为了方便在热力图中显示段位,我们将段位设置为数据框的索引。

# 设置段位为索引
data.set_index('段位', inplace=True)

通过set_index方法,将段位设置为索引,使得段位信息能够在绘制图表时作为Y轴显示。

5. 绘制热力图

使用Seaborn的heatmap函数,我们可以轻松绘制出英雄胜率的热力图,并且通过颜色深浅来直观显示不同英雄在不同段位的胜率差异。

# 使用seaborn绘制胜率热力图
sns.heatmap(data, annot=True, cmap='YlGnBu')
  • annot=True:在每个单元格中显示具体的胜率数值。
  • cmap='YlGnBu':设置颜色渐变方案,YlGnBu表示从黄色到绿色再到蓝色的渐变色。
6. 显示图表

最后,我们通过plt.show()来显示绘制的热力图。

# 显示图表
plt.show()

 

通过这张热力图,就可以清晰地看到不同英雄在不同段位的胜率表现。例如,颜色越深的地方表示胜率越高,这对于玩家选择英雄有很大的参考价值。比如,英雄C在各个段位的表现都比较稳定且胜率较高,可能是一个值得信赖的选择。

彩蛋

嘿嘿嘿,几天自己做的晚餐,感觉自己做真的很划算,这一盘饺子成本也才三四块钱哎!好吃还划算嘞!

然后趁今天开学第一天,写一下这学期的计划吧!

1)过六级!过六级!这是这个学期比较重要的事情

2)好好学习专业知识,提升一下绩点

3)这属于小秘密暂时不说哈!

4)看完《明朝那些事儿》(大哥你买了一年半了咋还没看完啊!!!)

5)有意识的练字

6)做mod地图

7)多写写文章,争取突破600粉(是不是有点太过远大哈!反正只管好好分享知识,其他都随缘吧)

8)大胆些,自信些

9)有空就写写歌

10)......

新学期!新气象!你我都加油

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

十七、网络编程

文章目录 一、网络相关的概念二、InetAddresss类三、Socket3.1 基本介绍 四、TCP网络通信编程4.1 应用案例1(使用字节流)4.2 应用案例2(使用字节流)4.3 应用案例3(使用字符流)4.4 应用案例4(TCPFileCopy)4.5 netstat 指令4.6 TCP网络通讯不为人知的秘密 …

为啥一定要考HCIE安全?这4个理由你不得不看

大家都知道,网络安全越来越成为企业和个人关注的焦点。 随着网络攻击的日益复杂和频繁,对于具备高级网络安全技能的专业人才的需求也在不断增长。HCIE-Security认证,作为华为推出的顶级信息安全认证,正是满足这一需求的黄金标准。…

inflight 守恒化简

设 x 为 E bw / delay 效能,y 为 flow 在瓶颈处的实际分配带宽,r 为时延,inflt 守恒模型的方程组如下: I ( t ) ∑ i 0 n w i ( t ) I(t)\displaystyle\sum_{i0}^n w_i(t) I(t)i0∑n​wi​(t) d x d t y r − x \dfrac{dx}{dt…

论文速读|自然语言的最优控制合成:机遇与挑战

项目地址:Optimal Control Synthesis from Natural Language: Opportunities and Challenges 介绍了一种从自然语言自动生成最优控制器的框架,该框架主要包括以下几个步骤:首先,通过人类用户提供的初始文本和系统描述,…

苹果系统中如何安装Python和PyCharm

1、Python官网下载安装包 Python官网下载苹果版本的安装包。 2、PyCharm官网下载安装包 3、下载完毕后安装Python 我采用的是在Windows下下载安装包,然后移动硬盘挂接到MacOS的方式进行安装。 双击开始安装Python Python安装完毕 4、Python安装完毕后的测定 注意直…

【开源免费】基于SpringBoot+Vue.JS高校校园招聘服务系统(JAVA毕业设计)

本文项目编号 T 010 ,文末自助获取源码 \color{red}{T010,文末自助获取源码} T010,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

Qt QPushButton 按钮添加数字气泡

使用场景 项目中,在某个按钮的右上角添加数字气泡是一个很常见的功能,可以用新建一个组合类来实现。不过这样比较麻烦,如果加气泡是后面的需求,可能改动的地方较多。 下面介绍2种比较简单,不需要改动按钮响应的方式。…

Web3社交新经济,与 SOEX 实现无缝交易的高级安全性

出于充分的理由,安全性是交易中至关重要的考虑因素。每个人都应该确保自己的资金在交易时是安全的。由于 SOEX 充当您与交易所的最佳连接,因此必须强调的是,该系统不会引发任何安全问题。 &a…

央视曝光“硫超标”枸杞,记者直击加工现场:被熏到泪流不止

枸杞,这一自古以来便被誉为“药食同源”的珍贵食材,不仅承载着中华民族深厚的养生智慧,也广泛融入现代人的日常饮食与保健之中。 从食品、饮料到保健品,枸杞的身影无处不在,其独特的营养价值与药用价值深受消费者青睐。…

心电调试笔记

原理图设计 注意事项 引脚连接检查:确保每个元器件与芯片引脚连接正确是基础,错误的连接可能导致系统无法正常工作。未连接引脚标识:对于未使用的引脚,虽然不连接但应标识为非使用状态,以免混淆或引起误操作。测试点设…

【 html+css 绚丽Loading 】 000034 三元聚散盘

前言:哈喽,大家好,今天给大家分享htmlcss 绚丽Loading!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 &#x1f495…

解锁MySQL数据库基础命令:从入门到精通的实战指南

作者简介:我是团团儿,是一名专注于云计算领域的专业创作者,感谢大家的关注 座右铭: 云端筑梦,数据为翼,探索无限可能,引领云计算新纪元 个人主页:团儿.-CSDN博客 前言:…

PLUTO: 推动基于模仿学习的自动驾驶规划的极限

PLUTO: Pushing the Limit of Imitation Learning-based Planning for Autonomous Driving PLUTO: 推动基于模仿学习的自动驾驶规划的极限 https://arxiv.org/abs/2404.14327 Abstract We present PLUTO, a powerful framework that Pushes the Limit of imitation learn…

【扇贝编程】python爬虫——爬取动态网页笔记

在示例网站上登陆后点开第一条请求(wp-login.php)。右边的 Headers 里可以看到请求地址(Request URL)为 https://wpblog.x0y1.com/wp-login.php,请求方式(Request Method)是 POST,状…

戴尔科技领涨市场,AI服务器需求成关键驱动力

戴尔科技强劲上涨,AI服务器需求激增 戴尔科技公司日内股价飙升4.2%,达到115.42美元,接近一个月高点。这一强劲表现主要得益于该公司上调了年度盈利预期,原因是对Nvidia驱动的人工智能优化服务器的需求显著增加。戴尔将2025财年的年…

RTC(实时时钟)/BKP(备份寄存器

1 unix时间戳 2 时间戳转换函数 3 BKP(备份寄存器) 1 TAMPER引脚侵入事件 2 RTC校准时间 3 RST闹钟脉冲和秒脉冲 可以输出出来为其他信号提供 4 校准时钟,寄存器加输出RTC校准时钟 5 总结:3个功能只能同时使用一个 4 BKP基本…

windows屏幕录制:探索四款顶级录屏工具!

在数字化时代,我们经常需要记录屏幕上的操作,无论是为了教学、演示还是娱乐。Windows操作系统提供了多种录屏工具,这些工具各有特色,能够满足不同用户的需求。本文将为您介绍几款备受好评的录屏软件! 福昕录屏大师 直…

【RabbitMQ】核心概念

界⾯上的导航栏共分6部分, 这6部分分别是什么意思呢, 我们先看看RabbitMQ的工作流程 1. Producer和Consumer Producer:生产者,是RabbitMQ Server的客户端,向RabbitMQ发送消息 Consumer: 消费者,也是RabbitMQ Server的客户端,从RabbitMQ接收消息 Broker:其实就是RabbitMQSer…

ABAP Dialog Radio Button

额.妈了个巴子,整了一天,才发现,原来Dialog 的Radio Button 是要右键去设置组的 我就说为什么不行咧 误区:我以为是属性那里的组去设置的

shell脚本编写之四则运算

shell程序默认支持整数加、减、乘、除、求余的运算。 1、使用$(())方式进行运算 例如计算23,使用$((23))。 我在脚本中加入这几种运算进行测试: 执行脚本后结果如下: 2、使用$[]方式进行运算 例如计算23,使用$[23]&#xff0c…