相关系数矩阵与热力图heatmap

相关系数矩阵与热力图heatmap

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# 生成随机矩阵
df = np.random.randint(-10,10,size=(5,8))
df
array([[-10,  -4,   1,   8,   8,  -9,  -2,  -2],
       [ -4,  -2,   7, -10,  -6,   4,   5,  -1],
       [  6,   4,   1,  -7,   0,   3,   3,   4],
       [  8,  -2,   9,  -4,   0,   1,   2,   0],
       [  3,   5,  -3,   1,  -4,  -3,   8,   2]])
# 计算相关系数矩阵
corr = np.corrcoef(df)
corr
array([[ 1.        , -0.45187846, -0.81601955, -0.41843364, -0.29089038],
       [-0.45187846,  1.        ,  0.4896793 ,  0.54083859,  0.02788629],
       [-0.81601955,  0.4896793 ,  1.        ,  0.48284327,  0.2963696 ],
       [-0.41843364,  0.54083859,  0.48284327,  1.        , -0.14536089],
       [-0.29089038,  0.02788629,  0.2963696 , -0.14536089,  1.        ]])
# 生成热力图
f,ax = plt.subplots(figsize=(10,5))
sns.heatmap(corr,annot=True)
# annot=True表示在方格内显示数值。

相关系数矩阵与热力图heatmap_第1张图片
相关系数矩阵热力图

fig,ax = plt.subplots()等价于:

fig = plt.figure()
ax = fig.add_subplot(1,1,1)

fig, ax = plt.subplots(1,3),其中参数1和3分别代表子图的行数和列数,一共有 1x3 个子图像。函数返回一个figure图像和子图ax的array列表。

fig, ax = plt.subplots(1,3,1),最后一个参数1代表第一个子图。

如果想要设置子图的宽度和高度可以在函数内加入figsize值

fig, ax = plt.subplots(1,3,figsize=(15,7)),这样就会有1行3个15x7大小的子图。

你可能感兴趣的:(相关系数矩阵与热力图heatmap)