fig = plt.figure(figsize=figsize) ############## # left panel # ############## ax = plt.subplot(121, projection=imap.wcs) opts = { 'cmap': 'magma', 'norm': colors.LogNorm(vmin=1e-2, vmax=3), } plotstyle.setup_axis(ax, nticks=[5, 5], fmt=None) P = np.sum(imap[1:]**2, axis=0)**0.5 im = ax.imshow(P, **opts) ax.set_xlabel('$l$') ax.set_ylabel('$b$') cax = plotstyle.add_colorbar_hpad(ax, pad="1%", hpad="50%") fig.colorbar(im, cax=cax, orientation='horizontal', shrink='50%').set_label(texify("P [MJy/sr]"), fontsize=12) cax.xaxis.set_label_position('top') cax.xaxis.set_ticks_position('top') ax.text(0.15, 1.03, texify("f090"), transform=ax.transAxes, fontsize=14) ax.tick_params(axis='x', colors='white', which='both', labelcolor='black') ax.tick_params(axis='y', colors='white', which='both', labelcolor='black') ax.set_aspect('equal') for side in ['left', 'right', 'top', 'bottom']: ax.spines[side].set_visible(True) ax.spines[side].set_color('white') ############### # right panel # ###############
# contour plot # l_ = np.percentile(np.ravel(irmap), [70,80,90]) l_ = np.percentile(np.ravel(irmap), [50, 70, 90]) levels = [irmap.min(), l_[0], l_[1], l_[2], irmap.max()] ax.contour(X_, Y_, irmap, levels=levels, cmap='gray', transform=ax.get_transform('world')) ax.set_xlabel('$l$') ax.set_ylabel('$b$') # add colorbar # cax = plotstyle.add_colorbar(fig, ax) # cbar = fig.colorbar(im, cax=cax) cax = plotstyle.add_colorbar_hpad(ax, hpad="50%", size="2%") cbar = fig.colorbar(im, cax=cax, orientation="horizontal") cbar.set_label(texify("I [MJy/sr]"), fontsize=10) cbar.set_ticks([30, 40, 60, 80]) cbar.set_ticklabels([texify("30"), texify("40"), texify("60"), texify("80")]) cax.xaxis.set_ticks_position('top') cax.xaxis.set_label_position('top') ax.text(0.12, 1.02, texify("f220"), transform=ax.transAxes, fontsize=14) # right panel # ax = plt.subplot(122, projection=irmap.wcs) ax = plt.subplot(122, projection=irmap.wcs) plotstyle.setup_axis(ax, yticks=False, nticks=[5, 5], fmt=None) opts.update({ 'vmin': None, 'vmax': None,
if title: label = f'{title}: ' + label else: noise = lib.P_error(imap, ivar * s**2) label = "Noise (P)" if title: label = f'{title}: ' + label # start plotting opts = {'cmap': 'gray', 'vmin': args.min, 'vmax': args.max} fig = plt.figure() ax = plt.subplot(111, projection=imap.wcs) plotstyle.setup_axis(ax, nticks=[5, 5], fmt=None) im = ax.imshow(noise, **opts) plt.xlabel('$l$') plt.ylabel('$b$') cax = plotstyle.add_colorbar_hpad(ax) fig.colorbar(im, cax=cax, orientation='horizontal').set_label( texify(f"{label} {fcode} [MJy/sr]"), fontsize=12) cax.xaxis.set_ticks_position('top') cax.xaxis.set_label_position('top') # save figure: make sure the output file has proper name ofile = op.join(args.odir, args.oname) print("Writing:", ofile) plt.savefig(ofile, bbox_inches='tight') # optionally save the snr map as a fits file if args.save is not None: if not args.pol: ofile = f'snr_{fcode}.fits' else: ofile = f'snr_{fcode}_pol.fits' ofile = op.join(args.save, ofile) print("Writing:", ofile) enmap.write_map(ofile, snr)
Y_, X_ = irmap.posmap() / np.pi * 180 # contour plot l_ = np.percentile(np.ravel(irmap), [50, 70, 90]) levels = [irmap.min(), l_[0], l_[1], l_[2], irmap.max()] ax.contour(X_, Y_, irmap, levels=levels, cmap='gray', transform=ax.get_transform('world')) ax.set_xlabel('$l$') ax.set_ylabel('$b$') # add colorbar # cax = plotstyle.add_colorbar(fig, ax) locator = ticker.MaxNLocator(nbins=5) cax = plotstyle.add_colorbar_hpad(ax, hpad='50%', loc='top') cb = fig.colorbar(im, cax=cax, orientation='horizontal', ticks=locator, ticklocation='top') cb.set_label(texify("I [MJy/sr]"), fontsize=12) ax.text(0.15, 1.03, texify("f220"), transform=ax.transAxes, fontsize=14) # right panel ax = plt.subplot(122, projection=irmap.wcs) plotstyle.setup_axis(ax, yticks=False, nticks=[5, 5], fmt=None) im = ax.imshow(irmap, **opts) # polarization angle plot # reload imap to get the original resolution theta = lib.Bangle(imap[1], imap[2], toIAU=True)