使用MatPlotLib填充太多

时间:2017-01-13 08:03:21

标签: python matplotlib

我正在使用matplotlib从pandas数据框执行热图。一切看起来都不错,只是我在热图的顶部有太多填充,我不知道如何更改它: heatmap with too much padding on the top

我目前使用的代码:

plt.figure(num=1,figsize=(10,10))
plt.pcolor(table, cmap='Reds', vmin=0, vmax=5, edgecolors="black")
plt.tight_layout()
plt.yticks(np.arange(0.5, len(table.index), 1), table.index)
plt.xticks(np.arange(0.5, len(table.columns), 1), table.columns, rotation=45)
plt.savefig('test.png', bbox_inches='tight')
plt.show()

是因为yticks是字符串而且matplotlib试图创建空间以防我想要旋转它们吗?

谢谢! Regars!

1 个答案:

答案 0 :(得分:1)

Matplotlib尝试为轴限制找到一个漂亮的圆数(例如45而不是41),以使绘图看起来更好用自动滴答。重新定义刻度不会改变限制。您可以手动强制它们与您的数据完全匹配:

plt.gca().set_ylim((0, len(table.index)))
plt.gca().set_xlim((0, len(table.columns)))