有什么方法可以改变 Seaborn 热图的单元格大小吗?
我发现this https://stackoverflow.com/questions/35127920/overlapping-yticklabels-is-it-possible-to-control-cell-size-of-heatmap-in-seabo但我无法让它按预期工作。
所以,我的 y 轴标签中有很长的文本。由于所有文本都被切掉,我想将热图的单元格大小缩小得更小。我不需要那么大的矩形。 (仅作为示例突出显示。)
(I hid label names.)
当我改变图形大小时,
plt.figure(figsize=(8, 6)) or
figure.set_size_inches(12, 12)
单元格也会变大,因此文本仍然被切断。
这是代码。
sns.set(font_scale=1.2)
ax0 = plt.axes()
ax1 = sns.heatmap(hmap, cbar=0, cmap="YlGnBu",linewidths=2, ax=ax0,vmax=3000, vmin=0)
ax1.set_title('test heatmap')
for item in ax1.get_yticklabels():
item.set_rotation(0)
for item in ax1.get_xticklabels():
item.set_rotation(0)
figure = plt.gcf() # get current figure
figure.set_size_inches(12, 12)
plt.savefig('test.png') , dpi=400)
尝试使用square=True
你的论点sns.heatmap
称呼。这会将热图单元限制为正方形纵横比。
ax1 = sns.heatmap(hmap, cbar=0, cmap="YlGnBu",linewidths=2, ax=ax0,vmax=3000, vmin=0, square=True)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)