【问题标题】:Reduce Whitespace in pcolor matplotlib plot减少 pcolor matplotlib 图中的空白
【发布时间】:2014-06-26 00:49:10
【问题描述】:

我目前正在使用 matplotlib pcolor 绘制透视表,但我的坐标轴没有像我希望的那样运行。 我使用以下方法绘制表格:

pyl.pcolor(pivot_99)
pyl.colorbar()
pyp.suptitle('Pivot 99', fontsize=14)
pyp.xlabel('Site Number', fontsize=12)
pyp.ylabel('Site Number', fontsize=12)
pyp.yticks(arange(len(pivot_99.index)),pivot_99.index)
pyp.xticks(arange(len(pivot_99.columns)),pivot_99.columns, rotation = 90)
pyl.savefig('Pivot 99.png')
pyl.show()

其中 pivot_99 是由 0 到 1 之间的数字组成的数据框。索引和列的长度始终相同,但不同年份的值不同。当我绘制 pivot_99 时,它看起来不错:

但是,当我绘制 2000 年热图时,顶部和右侧有额外的空间。

有谁知道为什么会发生这种情况,或者我如何修复图表以便只显示带颜色的空间?谢谢

【问题讨论】:

    标签: python matplotlib color-mapping prettyplotlib


    【解决方案1】:

    尝试使用set_xlimset_ylim,如下例所示:

    import matplotlib.pyplot as pyp
    
    pyp.gca().set_xlim((1,10))
    pyp.gca().set_ylim((1,12))
    pyp.plot([1,2],[1,2])
    pyp.show()
    

    你可以试试xlim=ylim=558,我可以测试一下,因为我没有你的数据:(

    【讨论】:

      【解决方案2】:

      或者,您可以使用prettyplotlib,它会自动为您设置xlimylim,删除您的刺和刻度,并为您提供合理的颜色条。

      import prettyplotlib as ppl
      ppl.pcolormesh(pivot_99)
      

      完全披露:我是 prettyplotlib 的作者 :)

      【讨论】: