做图篇:python 相关图(Correllogram)或绘制heatmap

        若有两种变量,且它们的值为离散的,那么二维相关图可以表示两个变量所有可能组合之间的相关性。当然如果是单变量,那么自身所有可能的组合也可以组成一个相关图。

首先,介绍一下heatmap的用法及一些参数:

seaborn.heatmap(data, vmin=None, vmax=None, cmap=None, center=None, robust=False, annot=None, fmt='.2g', annot_kws=None, linewidths=0, linecolor='white', cbar=True, cbar_kws=None, cbar_ax=None, square=False, xticklabels='auto', yticklabels='auto', mask=None, ax=None, **kwargs)

【1】data参数使用:

例子:

import seaborn as sns
import numpy as np
import  matplotlib.pyplot as plt

data = np.array([[1,2,6],[4,5,6],[7,8,9]])
sns.heatmap(data,annot=True)
plt.show()

【2】其他参数:

  • annot: 默认为False,为True的话,会在格子上显示数字
  • vmax, vmin: 热力图颜色取值的最大值,最小值,默认会从data中推导
import seaborn as sns
import numpy as np
import  matplotlib.pyplot as plt

data = np.array([[1,2,6],[4,5,6],[7,8,9]])
sns.heatmap(data,annot=True,vmax=8,vmin=1)
plt.show()

【3】更多参数参考:http://seaborn.pydata.org/generated/seaborn.heatmap.html

 相关图(Correllogram)的绘制:

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

# Import Dataset
df = pd.read_csv("https://github.com/selva86/datasets/raw/master/mtcars.csv")

# Plot
plt.figure(figsize=(12,10), dpi= 80)
sns.heatmap(df.corr(), xticklabels=df.corr().columns, yticklabels=df.corr().columns, cmap='RdYlGn', center=0, annot=True)

# Decorations
plt.title('Correlogram  mtcars', fontsize=22)
plt.xticks(fontsize=12)
plt.yticks(fontsize=12)
plt.show()

猜你喜欢

转载自blog.csdn.net/weixin_41297324/article/details/86575306