python画相关性可视化图_Python可视化matplotlibseborn16-相关性热图
本文速览普通相关性heatmap聚类相关性heatmap
本文将了解到什么?
1、数据准备
2、seaborn.heatmap绘制correlation heatmap
默认参数绘制correlation heatmap
vmax设置颜色深浅
cmp参数变换colormap
annot、fmt、annot_kws设置格子中文本
mask设置部分数据显示
3、seaborn.clustermap绘制correlation clustermap
1、数据准备
关键一步,使用pandas的corr函数生成相关矩阵。
from string import ascii_letters
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import palettable
# 生成随机数
rs = np.random.RandomState(33)#类似np.random.seed,即每次括号中的种子33不变,每次可获得相同的随机数
d = pd.DataFrame(data=rs.normal(size=(100, 26)),#normal生成高斯分布的概率密度随机数,需要在变量rs下使用
columns=list(ascii_letters[26:]))
# corr函数计算相关性矩阵(correlation matrix)
dcorr = d.corr(method='pearson')#默认为'pearson'检验,可选'kendall','spearman'
简单看下原始数据集,如下:可以简单理解为一个具有26个变量(A-Z),每个变量具有100个平行的矩阵。
经过corr函数变换后 ,变成26x26的方形矩阵。
2、seaborn.heatmap绘制correlation heatmap
默认参数绘制correlation heatmap
plt.figure(figsize=(11, 9),dpi=100)
sns.heatmap(data=dcorr,
)
vmax设置颜色深浅
plt.figure(figsize=(11, 9),dpi=100)
sns.heatmap(data=dcorr,
vmax=0.3, #上图颜色太深,不美观,让整体颜色变浅点
)
cmp参数变换colormap
关于colormap可参考:
plt.figure(figsize=(11, 9),dpi=100)
sns.heatmap(data=dcorr,
vmax=0.3,
cmap=palettable.cmocean.diverging.Curl_10.mpl_colors, #换个colormap
)
annot、fmt、annot_kws设置格子中文本
plt.figure(figsize=(11, 9),dpi=100)
sns.heatmap(data=dcorr,
vmax=0.3,
cmap=palettable.cmocean.diverging.Curl_10.mpl_colors,
annot=True,#图中数字文本显示
fmt=".2f",#格式化输出图中数字,即保留小数位数等
annot_kws={'size':8,'weight':'normal', 'color':'#253D24'},#数字属性设置,例如字号、磅值、颜色
)
mask设置部分数据显示
plt.figure(figsize=(11, 9),dpi=100)
sns.heatmap(data=dcorr,
vmax=0.3,
cmap=palettable.cmocean.diverging.Curl_10.mpl_colors,
annot=True,
fmt=".2f",
annot_kws={'size':8,'weight':'normal', 'color':'#253D24'},
mask=np.triu(np.ones_like(dcorr,dtype=np.bool))#显示对脚线下面部分图
)
square、linewidths、 cbar_kws设置方格外框、图例设置
plt.figure(figsize=(11, 9),dpi=100)
sns.heatmap(data=dcorr,
vmax=0.3,
cmap=palettable.cmocean.diverging.Curl_10.mpl_colors,
annot=True,
fmt=".2f",
annot_kws={'size':8,'weight':'normal', 'color':'#253D24'},
mask=np.triu(np.ones_like(dcorr,dtype=np.bool)),#显示对脚线下面部分图
square=True, linewidths=.5,#每个方格外框显示,外框宽度设置
cbar_kws={"shrink": .5}
)
3、seaborn.clustermap绘制correlation clustermap
plt.figure(figsize=(11, 9),dpi=100)
sns.clustermap(data=dcorr,
vmax=0.3,
cmap=palettable.cmocean.diverging.Curl_10.mpl_colors,
linewidths=.75,
)
注意左上方分类条
row_c = dict(zip(list(ascii_letters[26:]), plt.get_cmap('RdPu')(np.linspace(0, 1, 26))))
index_c = dict(zip(list(ascii_letters[26:]), plt.get_cmap('RdPu')(np.linspace(0, 1, 26))))
sns.set(style="ticks")
plt.figure(figsize=(13, 13))
sns.clustermap(data=dcorr,
vmax=0.3,
cmap=palettable.cmocean.diverging.Curl_10.mpl_colors,
linewidths=.75,
row_colors=pd.Series(dcorr.columns.get_level_values(None), index=dcorr.columns).map(row_c), #行方向聚类用颜色区分不同类
col_colors=pd.Series(dcorr.columns.get_level_values(None), index=dcorr.columns).map(index_c),
dendrogram_ratio=0.15,# 图放大缩小
)
相关性热图(correlation heatmap& correlation clustermap)是heatmap和clustermap的变种,更多参数设置请戳:
python画相关性可视化图_Python可视化matplotlibseborn16-相关性热图相关推荐
- python绘制热图_python使用matplotlib绘制热图
python常用的绘图库就是matplotlib,今天在给公司绘图时,偶然间发现matplotlib可以绘制热图,并且十分简洁,拿出来跟大家分享一下.(由于涉及到公司数据问题,这里采用随机数生成数据进 ...
- python画饼图加牵引线_python可视化---饼图添加图例
原博文 2019-03-03 12:01 − import matplotlib.pyplot as plt import matplotlib as mpl mpl.rcParams["f ...
- python画有权重网络图_Python可视化之NetworkX绘制网络图\节点关系
除了Gephi,python的NetworkX也是绘制网络图的利器,后者功能更强大,能兼容Gephi的一些绘制结果,但相应学习成本也更高点.另外似乎还有一个igraph-python库,后期可以学习一 ...
- python热图_Python可视化matplotlibseborn14-热图heatmap
热力图(heatmap)可通过颜色深浅变化,优雅的展示数据的差异. 详细介绍python seaborn绘制热图 本文速览Matplotlib热图heatmapseaborn热图1seaborn热图2 ...
- python画相关性可视化图_Python可视化16matplotlibseborn-相关性热图(correlation heatmap)...
本文将了解到什么? 0.成品图展示 1.数据准备 2.seaborn.heatmap绘制correlation heatmap 默认参数绘制correlation heatmap vmax设置颜色深浅 ...
- python 可视化饼图_Python可视化学习(饼状图,坐标系...)
写在前面的话 01 今天资源君带大家学习一下Python的可视化,何谓可视化呢?我们常常听说Python的数据分析,数据分析中很重要的一个就是将数据展示出来,如何展示出来呢?这就得靠我们的Python ...
- 用python画动态三维轨迹_python 画3维轨迹图并进行比较的实例
一. 数据的格式 首先我们需要x,y,z三个数据进行画图.从本实验用到的数据集KITTI 00.txt中举例: 1.000000e+00 9.043680e-12 2.326809e-11 5.551 ...
- 用python画渐变的圆_python画环形图的方法
本文实例为大家分享了python画环形图的具体代码,供大家参考,具体内容如下 import os import pandas as pd import matplotlib.pyplot as plt ...
- 用python画动态三维轨迹_Python学习(一) —— matplotlib绘制三维轨迹图
在研究SLAM时常常需要对其输出的位姿进行复现以检测算法效果,在ubuntu系统中使用Python可以很好的完成相关的工作. 一. Ubuntu下Python的使用 在Ubuntu下使用Python有 ...
最新文章
- 关于VS的解决方案sln无法设置某些工程的依赖项的问题的解决方法
- 专访英特尔戴金权 | AI和大数据正在这样重塑英特尔
- IE6下fixed失效的解决方法
- kademlia java_分布式哈希表原理与实现(Python版和Java版)
- 联想杯 - Gentle Jena(单调栈)
- php集成环境怎么打开,PHP集成开发环境PhpStorm快速入门指南(二):打开一个项目...
- ruby array_Ruby中带有示例的Array.keep_if方法
- (7)雅思屠鸭第七天:阅读中538个考点词一网打尽
- 【Verilog HDL】4选1数据选择器
- 织梦首页header实现会员的登录及会员状态显示
- Maven与Eclipse的整合和简单的Maven项目(二)
- 如何使用 JS 实现带字母的导航城市列表,以及城市搜索
- python arp断网攻击_局域网arp断网攻击
- [C++刷题笔记]——区间分解质数
- 手写数字识别:CNN-AlexNet
- ## KEIL 5在MDK注册过程中LIC无法添加的问题解决:
- iOS下载APP之后直接跳转到信任界面
- Reflector 3 for Mac(ios屏幕镜像工具)
- Few-Shot Semantic Segmentation with Democratic Attention Networks阅读笔记
- PC 电脑硬件检测相关工具
热门文章
- 素数和 c语言慕课,第五周 素数和问题
- 剑指offer:数据流中的中位数(小顶堆+大顶堆)
- Vue脚手架搭建简单步骤
- CSS样式表书写位置
- 【Redis】3、Redis集群部署
- HTML5有哪些表单新特性
- VS2010 工具箱组件添加重复
- linux gd结构体,U-Boot中gd的定义和使用
- netbeans基于mysql学生信息_学生信息管理系统的设计与实现(NetBeans IDE,MySQL)
- 无偏移谷歌瓦片地址_[转]OpenStreetMap/Google/百度/Bing瓦片地图服务(TMS)