热图是数据统计中经常使用的一种数据表示方法,它能够直观地反映数据特征,查看数据总体情况,在诸多领域具有广泛应用。

一:matplotlib绘制方法

1.基础绘制

热图用以表示的是矩阵数据,例如相关阵、协差阵等方阵,也可以不是方阵。所以在处理数据前,我们需要将数据转成二维数组形式(二维列表、二维np.array、np.mat、pd.DataFrame等都可以)。

import matplotlib.pyplot as plt

import numpy as np

data=[[1,0.5,0.7],[0.1,0.2,0.3]]

plt.imshow(data)

plt.show()

利用上述代码即可绘制基础的热图。

2.细节补充

(1)标题:plt.title('标题名',loc=,fontdict=fontdict,rotation=,x=,y=),绘制标题。

loc:'left'、'center'、'right',表示标题位置,默认为'center'。

fontdict:设置字体,详见(7)。

rotation:标题逆时针旋转角度,默认为0。

x,y:用于进一步控制标题在画布中的位置。

(2)x轴、y轴坐标:

2.1:plt.xticks()与plt.yticks()。用于xy坐标的绘制,如标签位置、颜色等。

plt.xticks(ticks=,labels['label1','label2','label3'],color='red',rotation=45,veritalalignment=,horizontalalignment=,family=,style=,weight=,bbox=)

ticks:x轴各个标签位置,[0,1,2,...]。

labels:各个标签文本,['label1',label2'...]。

color:字体颜色。

rotation:字逆时针旋转角度。

verticalalignment:'center','top','bottom','baseline',标签垂直对齐方式。

horizontalalignment:'center','right','left,标签水平对齐方式。(这两种对齐方式可以使图更加整洁,避免标签参差不齐)。

family:设置字体。

style:字体风格。

weight:字体粗细。

bbox:字体边框,如{'facecolor':'red','alpha':0.5}。

2.2:plt.tick_params(axis=,which=,width=,length=,color=,direction=,bottom=,top=,left=,right=,pad=,labelsize=,lanbelbottom=,labeltop=,labelleft=,labelright=)。修改

axis:'x'、'y'、'both',表示设置哪一坐标轴,默认both。

which:'major'、'minor'、'both',代表设置主刻度线、副刻度线和同时设置,默认为:'major'。

width,length:刻度线长度与宽度。

color:刻度线颜色。

direction:'in'、'out’、'inout',表示刻度线在绘图区内、外或同时显示。

bo