Example #1
0
def contour_transition(da_transition: xr.DataArray, ax: mpl.axes.Axes,
                       rcp: str):
    """Takes in DataArray for transition time from x to y months Omega Aragonite
    undersaturation, axes for the plot, and the simulation name, and makes a 
    contour plot."""
    crs = ccrs.Robinson(central_longitude=180)
    src = ccrs.PlateCarree()
    clevs = np.arange(0, 31, 5)
    lon = da_transition.xt_ocean.data
    lat = da_transition.yt_ocean.data

    im = ax.contourf(lon,
                     lat,
                     da_transition,
                     cmap='plasma',
                     levels=clevs,
                     transform=src,
                     robust=True)
    if ax == plt.gcf().get_axes()[0]:
        cbar = plt.colorbar(im,
                            ax=plt.gcf().get_axes(),
                            orientation='horizontal',
                            fraction=0.05,
                            pad=0.05)
        cbar.set_label(
            'Transition Time from 1-->6 Months Undersaturated (years)',
            fontsize=16)

    ax.add_feature(cfeature.LAND, zorder=10, facecolor='darkgray')
    ax.set_global()
    ax.set_title(rcp)
Example #2
0
def contour_emergence(da_emergence: xr.DataArray,
                      m: int,
                      ax: mpl.axes.Axes,
                      rcp: str = None):
    """Takes in DataArray for time of emergence, axes for the plot, number of
    undersaturation months for recognized signal, and simulation name, and
    makes a contour plot."""
    crs = ccrs.Robinson(central_longitude=180)
    src = ccrs.PlateCarree()
    clevs = np.arange(1950, 2101, 10)
    lon = da_emergence.xt_ocean.data
    lat = da_emergence.yt_ocean.data

    im = ax.contourf(lon,
                     lat,
                     da_emergence,
                     cmap='plasma',
                     levels=clevs,
                     transform=src,
                     robust=True)
    if ax == plt.gcf().get_axes()[0]:
        cbar = plt.colorbar(im,
                            ax=plt.gcf().get_axes(),
                            orientation='horizontal',
                            fraction=0.05,
                            pad=0.05)
        cbar.set_label('Year of Emergence', fontsize=16)

    ax.add_feature(cfeature.LAND, zorder=10, facecolor='darkgray')
    ax.set_global()
    if m == 1: months = 'month'
    else: months = 'months'
    if rcp == None:
        ax.set_title(str(m) + ' ' + months + '/year', fontsize=16)
    else:
        ax.set_title(rcp + ' - ' + str(m) + ' ' + months + '/year',
                     fontsize=16)