使用matplotlib pcolor在热图中排列刻度标签和方形尺寸

时间:2016-03-12 19:36:02

标签: python matplotlib graph heatmap

我想制作一个这样的热图。Example Heat map

到目前为止,我得到了热图,但是较小的正方形和几乎无法区分的刻度标签。

import matplotlib.pyplot as pyplot
import numpy as np
lbls = ['Li', 'Be', 'B', 'C', 'N', 'F', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'K', 'Ca', 'Sc', 'Ti',
            'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Rb', 'Sr', 'Y',
            'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Cs', 'Ba',
            'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At']

parr = np.random.random_integers(0,10,(63,63))
z_max = np.amax(parr)
z_min = np.amin(parr)
cbcolor = ['nipy_spectral','Greens','Blues','Reds']

fig, ax = pyplot.subplots()
fig.set_size_inches(15, 11)
ax.set_autoscale_on(False)

plot2 = pyplot.pcolor(parr, vmin=z_min, vmax=z_max,cmap=cbcolor[0])

pyplot.xticks(np.arange(0.5, len(lbls)), lbls,rotation=90,fontsize=8)
pyplot.yticks(np.arange(0.5, len(lbls)), lbls, fontsize=8)

pyplot.savefig("ploy.png", bbox_inches='tight')

对于上面的代码,我得到了 Heat map

任何帮助使它更像是具有更大的正方形和更多杰出的刻度标签的示例图表将不胜感激。

0 个答案:

没有答案