代码之家  ›  专栏  ›  技术社区  ›  pfc

Matplotlib:如何删除热图中的白线

  •  5
  • pfc  · 技术社区  · 7 年前

    import seaborn as sns
    import numpy as np
    import matplotlib.pyplot as plt
    FONTSIZE=20
    fig, axes = plt.subplots(nrows=1, ncols=4,figsize=(12,3))
    k=0
    for ax in axes.flat:
        mat = np.zeros((10,10)) + 0.5
        im = ax.imshow(mat,interpolation='nearest', vmin=0.0, vmax=1.0,cmap='Reds')
        ax.set_xlim([-0.5, 9.0 + 0.5])
        ax.set_ylim([-0.5, 9.0 + 0.5])
        ax.set_xticks([0,5])
        ax.set_yticks([0,5])
        ax.set_xlabel('X',fontsize=FONTSIZE)
        if k == 0:
            ax.set_ylabel('Y',fontsize=FONTSIZE)
        ax.set_title('Title')
        k += 1
    # Make an axis for the colorbar on the right side
    cax = fig.add_axes([0.99, 0.235, 0.03, 0.682])
    cbar = fig.colorbar(im, cax=cax,ticks=[0.0,0.1,0.2,0.3,0.4])
    cbar.ax.set_yticklabels(['0.0','0.1','0.2','0.3','0.4'])
    figtype = 'jpg'
    fig.tight_layout()
    fig.savefig('aaa.' + copy(figtype),format = figtype,bbox_inches='tight')
    

    图如下:

    enter image description here

    如何删除每个子批次中的白线?这令人惊讶。我发现如果我删除 import seaborn as sns

    我如何删除白线,同时保持图形的外观与当前外观相似?

    谢谢大家帮助我!

    1 回复  |  直到 7 年前
        1
  •  9
  •   ImportanceOfBeingErnest    7 年前

    import matplotlib.pyplot as plt
    plt.rcParams["axes.grid"] = False
    

    这应该在导入seaborn之前完成。
    darkgrid axes.grid : True 。这需要如上所示恢复。