python画热力图(相关系数矩阵图)

python画热力图(相关系数矩阵图)使用热力图的形式展示包括相关系数矩阵图的二维矩阵的方法 目前发现有两个 首先是使用 pandas 包的函数 但是 pandas 包的目测 不能显示数字 如果想试一下 可以参考 https zhuanlan zhihu com p 所以研究了一下第二种方法 就是用 seaborn 包画 参考了 https blog csdn net a article details 793

使用热力图的形式展示包括相关系数矩阵图的二维矩阵的方法,目前发现有两个:

首先是使用pandas包的函数,但是pandas包的目测,不能显示数字?

如果想试一下,可以参考https://zhuanlan.zhihu.com/p/

所以研究了一下第二种方法,就是用seaborn包画。

参考了

https://blog.csdn.net/a/article/details/

 https://blog.csdn.net/sunchengquan/article/details/

https://blog.csdn.net/weixin_/article/details/

等等文章,下面sns.heatmap中的各个参数可以参考第一个链接里面的文章。也可以sns.heatmap?查询。

下面sns.heatmap中,annot是表示我们要显示array中的数字,因为要显示数字,所以就round了一下,如果要表示相关矩阵图,建议乘以10,round一下,那样就得到-10到10之间的数字,比较好看。可以设置array中的数字的最大最小值,也可以采用center=0的设置,取决于自己对array中的数字的理解吧。如果需要显示xticklabels和yticklabels,那需要将参数设置成True。square的意思就是一个个cell是方块,不然是矩阵,然后最后是cmap是图的颜色。可以采用下面的那个,还有”Blues”等。还可以设置分割哪些cell的线的宽度等,可以通过sns.heatmap?查询。

import seaborn as sns import numpy as np import pandas as pd import matplotlib.pyplot as plt a = np.random.rand(4,3) fig, ax = plt.subplots(figsize = (9,9)) #二维的数组的热力图,横轴和数轴的ticklabels要加上去的话,既可以通过将array转换成有column #和index的DataFrame直接绘图生成,也可以后续再加上去。后面加上去的话,更灵活,包括可设置labels大小方向等。 sns.heatmap(pd.DataFrame(np.round(a,2), columns = ['a', 'b', 'c'], index = range(1,5)), annot=True, vmax=1,vmin = 0, xticklabels= True, yticklabels= True, square=True, cmap="YlGnBu") #sns.heatmap(np.round(a,2), annot=True, vmax=1,vmin = 0, xticklabels= True, yticklabels= True, # square=True, cmap="YlGnBu") ax.set_title('二维数组热力图', fontsize = 18) ax.set_ylabel('数字', fontsize = 18) ax.set_xlabel('字母', fontsize = 18) #横变成y轴,跟矩阵原始的布局情况是一样的

python画热力图(相关系数矩阵图)

ax.set_yticklabels(['一', '二', '三'], fontsize = 18, rotation = 360, horizontalalignment='right') ax.set_xticklabels(['a', 'b', 'c'], fontsize = 18, horizontalalignment='right')

python画热力图(相关系数矩阵图)

文章发布以后不能再修改了,真是很讨厌。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/176636.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午9:26
下一篇 2026年3月26日 下午9:26


相关推荐

  • idea激活码2022-激活码分享2022.02.14

    (idea激活码2022)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年4月1日
    1.6K
  • linux查看磁盘空间命令

    linux查看磁盘空间命令Linux 查看磁盘空间可以使用 df 和 du 命令 dfdf 以磁盘分区为单位查看文件系统 可以获取硬盘被占用了多少空间 目前还剩下多少空间等信息 例如 我们使用 df h 命令来查看磁盘信息 h 选项为根据大小适当显示 显示内容参数说明 Filesystem 文件系统 Size 分区大小 Used 已使用容量 Avail 还可以使用的容量 Use 已用百分比 Mou

    2026年3月19日
    2
  • 区块链技术开发入门书籍_区块链小白入门

    区块链技术开发入门书籍_区块链小白入门本文将对区块链开发使用的技术、工具、语言、平台做一次全景扫描,并对其应用状况进行分类。新工具不仅提升效率,还可为前人所不能。作为活跃开发领域之一,区块链新技术、工具、平台、语言与框架层出不穷,然而面

    2022年8月6日
    13
  • 双线性插值算法详解并用matlab实现「建议收藏」

    双线性插值算法详解并用matlab实现「建议收藏」参考:https://blog.csdn.net/huang1024rui/article/details/46545329数字图像处理双线性插值算法介绍双线性插值法又称为二次线性插值法。在传统的插值算法中,它的插值效果比nearest插值法要好的多,但是速度上也必然会慢很多,比bicubic(二次立方法)效果要差,但速度上要优于bicubic。它主要思想就是利用某像…

    2022年6月11日
    35
  • 重定向与转发的区别_响应重定向和请求转发的区别

    重定向与转发的区别_响应重定向和请求转发的区别重定向和转发的区别: 重定向和转发的区别就是请求服务器几次, 如果请求服务器地址没有变说明这是一次请求请求在自己的服务器里面流转这就是转发这是服务器行为。 如果请求服务器地址变了,说明这是请求了二次,第二次请求由客户端流浪器负责,在多台服务器之间流转这就是客户端行为。 重定向: 1、重定向的速度比较慢,需要跨越服务器 2、重定向是两次不同的请求 3、重定向是执行重定向之后的代码 4、地址栏的地址是会发生变化的 5、重定向不包含项目的根目录 6、重定向是会就是.

    2025年10月6日
    5
  • Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解[通俗易懂]

    Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解[通俗易懂]Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解

    2022年4月21日
    75

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号