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