Python数据分析-绘图-2-Seaborn进阶绘图-5-矩阵图
·
一、heatmap
热力图以颜色的明亮程度来显示数据的密集程度。颜色越明亮,数据越密集。
函数:seaborn.heatmap
常用参数:
| data | 接收二维矩阵数据集,用于绘图的数据集。 |
| vmin,vmax | 接收float,表示颜色映射的值的范围。默认为None |
| center | 接收float,表示以0为中心发散颜色,默认为None。 |
| cmap | 接收色彩映射或颜色列表,表示数值到颜色空间的映射,默认为None。 |
| robust | bool,如果为True,且vmin,vmax不存在,则用鲁棒分位数表示映射范围。默认为False。 |
| annot | bool或矩形数据集,表示是否在每个单元格显示数值。默认为1 |
| fmt | str,表示传递给FacetGrid的其他参数,默认为“auto” |
| linewidths | float,划分每个单元的线宽。默认为0. |
| linecolor | 划分每个单元的线条颜色,默认为“white” |
| square | bool,表示是否使每个单元为方形。 |
flights=sns.load_dataset('flights')
#生成交叉联表
flights=flights.pivot("month","year","passengers")
sns.heatmap(flights)

添加数值标记:
sns.heatmap(flights,annot=True,fmt="d")

二、clustermap
该函数用于绘制分层聚类热力图。它可以在左侧显示每一个样本的分层聚类情况,在上方显示每一个特征的分层聚类情况。以热力图的形式显示出样本的分布。
函数:seaborn.clustermap
常用参数:
| data | |
| pivot_kws | dict,颜色映射的值的范围,默认为None。 |
| method | str,聚类方法,默认为“average” |
| metric | float,表示数据距离度量方法。默认为“euclidean” |
| z_score | 0或1,表示选择0(行)或1(列)计算z分数。默认为None |
| standard_scale | 0或1,表示选择0(行)或1(列)进行标准化。默认为None |
| figsize | 表示创建图形大小,默认为None |
| {row,col}_cluster |
bool,表示是否对样本或特征聚类,默认为True。 |
| {row,col}_linkage | Numpy的ndarray,表示对行或列计算链接矩阵,默认为None |
| {row,col}_color | 接收list,DataFrame,Series,表示行或列标记的颜色列表,默认为None |
| mask | 接收boolean,array,DF,表示是否屏蔽缺失单元格,默认为None。 |
iris=sns.load_dataset('iris')
#把species属性去掉后保存为一个新数据集
species=iris.pop("species")
sns.clustermap(iris)

改变聚类方法,只绘制样本聚类图:
sns.clustermap(iris,method='single',col_cluster=False)

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)