Python绘制热图
1、构造一个绘制方法draw_heatmap(data,xlabels,ylabels):
参数
data:二维数组
xlabels:x轴标签
ylabels:y轴标签
import numpy as np
from matplotlib import pyplot as plt
from matplotlib import cm
from matplotlib import axes
def draw_heatmap(data,xlabels,ylabels):
cmap = cm.Blues
figure=plt.figure(facecolor='w')
ax=figure.add_subplot(2,1,1,position=[0.1,0.15,0.8,0.8])
ax.set_yticks(range(len(ylabels)))
ax.set_yticklabels(ylabels)
ax.set_xticks(range(len(xlabels)))
ax.set_xticklabels(xlabels)
vmax=data[0][0]
vmin=data[0][0]
for i in data:
for j in i:
if j>vmax:
vmax=j
if j<vmin:
vmin=j
map=ax.imshow(data,interpolation='nearest',cmap=cmap,aspect='auto',vmin=vmin,vmax=vmax)
cb=plt.colorbar(mappable=map,cax=None,ax=None,shrink=0.5)
plt.show()

2、演示及结果
a=np.random.rand(10,10)
xlabels=['A','B','C','D','E','F','G','H','I','J']
ylabels=['a','b','c','d','e','f','g','h','i','j']
draw_heatmap(a,xlabels,ylabels)


3、cmap = cm.get_cmap('rainbow',1000)
修改参数,获得不同的效果
