Exemplo n.º 1
0
 def clean_axis(ax):
     """Remove ticks, tick labels, and frame from axis"""
     ax.get_xaxis().set_ticks([])
     ax.get_yaxis().set_ticks([])
     ax.set_axis_bgcolor('#ffffff')
     for sp in ax.spines.values():
         sp.set_visible(False)
Exemplo n.º 2
0
def plot_gene_class(family_maps, outfname, can_siz):
    """Main plotting function
    """
    maps=sorted(family_maps.keys())
    nmaps=len(maps)+1
    fig=plt.figure(figsize=(6,can_siz))
    fig.subplots_adjust(top=0.91, bottom=0.3, left=0.4, right=0.9)
    # setting plotting structure 
    color_code=['blue', 'green', 'grey']
    for i,m in enumerate(maps):
        dis_nam=re.sub(r'_', r' ', m)
        gcnt=0 # n 
        for keys in ['dif_exp', 'mod_exp', 'not_exp']:
            try:cnt=family_maps[m][keys]
            except:cnt=0
            gcnt+=cnt
        xq, previous=[0], 0.0
        for keys in ['dif_exp', 'mod_exp', 'not_exp']:
            try:element=family_maps[m][keys]
            except:element=0
            xq.append(round(element/gcnt, 2)+previous)
            previous=xq[-1]
        ax=plt.subplot(nmaps, 1, i+1)
        plt.axis("off")
        cmap = mpl.colors.ListedColormap(color_code)
        cmap.set_over('0.15')
        cmap.set_under('0.75')
        norm = mpl.colors.BoundaryNorm(xq, cmap.N)
        cb2=mpl.colorbar.ColorbarBase(ax, cmap=cmap, norm=norm, orientation='horizontal', spacing='proportional', boundaries=xq)
        pos=list(ax.get_position().bounds)
        fig.text(pos[0] - 0.01, pos[1], dis_nam, fontsize=9, horizontalalignment='right')
        fig.text(0.91, pos[1], str(gcnt), fontsize=9, horizontalalignment='left')
        if m==maps[-1]:
            ax=plt.subplot(nmaps, 1, i+2)
            ax.patch.set_visible(False)
            for sp in ax.spines.itervalues():
                sp.set_visible(False)
            ax.spines["bottom"].set_visible(True)
            ax.yaxis.set_visible(False)
            ax.xaxis.set_ticks_position('bottom')
            for tick in ax.xaxis.get_major_ticks():
                tick.label.set_fontsize(9)
    blue_proxy=plt.Rectangle((0, 0), 0.1, 0.1, fc="blue")
    green_proxy = plt.Rectangle((0, 0), 0.1, 0.1, fc="green")
    grey_proxy = plt.Rectangle((0, 0), 0.1, 0.1, fc="grey")
    plt.legend([blue_proxy, green_proxy, grey_proxy],['diff. expressed', 'expressed', 'not expressed'], bbox_to_anchor = (0.75, -1.5), prop={'size':9})
    plt.savefig(outfname, format='svg')
Exemplo n.º 3
0
def plot_gene_class(family_maps, outfname, can_siz):
    """Main plotting function
    """
    maps = sorted(family_maps.keys())
    nmaps = len(maps) + 1
    fig = plt.figure(figsize=(6, can_siz))
    fig.subplots_adjust(top=0.91, bottom=0.3, left=0.4, right=0.9)
    # setting plotting structure
    color_code = ['blue', 'green', 'grey']
    for i, m in enumerate(maps):
        dis_nam = re.sub(r'_', r' ', m)
        gcnt = 0  # n
        for keys in ['dif_exp', 'mod_exp', 'not_exp']:
            try:
                cnt = family_maps[m][keys]
            except:
                cnt = 0
            gcnt += cnt
        xq, previous = [0], 0.0
        for keys in ['dif_exp', 'mod_exp', 'not_exp']:
            try:
                element = family_maps[m][keys]
            except:
                element = 0
            xq.append(round(element / gcnt, 2) + previous)
            previous = xq[-1]
        ax = plt.subplot(nmaps, 1, i + 1)
        plt.axis("off")
        cmap = mpl.colors.ListedColormap(color_code)
        cmap.set_over('0.15')
        cmap.set_under('0.75')
        norm = mpl.colors.BoundaryNorm(xq, cmap.N)
        cb2 = mpl.colorbar.ColorbarBase(ax,
                                        cmap=cmap,
                                        norm=norm,
                                        orientation='horizontal',
                                        spacing='proportional',
                                        boundaries=xq)
        pos = list(ax.get_position().bounds)
        fig.text(pos[0] - 0.01,
                 pos[1],
                 dis_nam,
                 fontsize=9,
                 horizontalalignment='right')
        fig.text(0.91,
                 pos[1],
                 str(gcnt),
                 fontsize=9,
                 horizontalalignment='left')
        if m == maps[-1]:
            ax = plt.subplot(nmaps, 1, i + 2)
            ax.patch.set_visible(False)
            for sp in ax.spines.itervalues():
                sp.set_visible(False)
            ax.spines["bottom"].set_visible(True)
            ax.yaxis.set_visible(False)
            ax.xaxis.set_ticks_position('bottom')
            for tick in ax.xaxis.get_major_ticks():
                tick.label.set_fontsize(9)
    blue_proxy = plt.Rectangle((0, 0), 0.1, 0.1, fc="blue")
    green_proxy = plt.Rectangle((0, 0), 0.1, 0.1, fc="green")
    grey_proxy = plt.Rectangle((0, 0), 0.1, 0.1, fc="grey")
    plt.legend([blue_proxy, green_proxy, grey_proxy],
               ['diff. expressed', 'expressed', 'not expressed'],
               bbox_to_anchor=(0.75, -1.5),
               prop={'size': 9})
    plt.savefig(outfname, format='svg')
Exemplo n.º 4
0
def make_patch_spines_invisible(ax):
    ax.set_frame_on(True)
    ax.patch.set_visible(False)
    for sp in ax.spines.values():
        sp.set_visible(False)