#!/usr/bin/env python # Wenchang Yang (wenchang@princeton.edu) # Mon Sep 19 13:41:47 EDT 2022 if __name__ == '__main__': import sys from misc.timer import Timer tt = Timer('start ' + ' '.join(sys.argv)) import sys, os.path, os, glob, datetime import xarray as xr, numpy as np, pandas as pd, matplotlib.pyplot as plt #more imports from misc.seasons import sel_season # if __name__ == '__main__': tt.check('end import') # #start from here season = 'JJA' def do_season_mean(da, season): return da.pipe(sel_season, season=season).groupby('time.year').mean('time') ifile = 'precip_AM2.1p1_LMR2019SST1200-1400_tigercpu_intelmpi_18_30PE_0101-0200_monthly.nc' da = xr.open_dataarray(ifile).load() da0 = da ifile = 'precip_AM2.1p1_LMR2019SST1450-1550_tigercpu_intelmpi_18_30PE_0101-0200_monthly.nc' da = xr.open_dataarray(ifile).load() da1 = da daa = do_season_mean(da1, season).mean('year') - do_season_mean(da0, season).mean('year') if __name__ == '__main__': from wyconfig import * #my plot settings from geoplots import mapplot cmap = 'BrBG' func = lambda da: da.sel(lon=slice(None, 150), lat=slice(20,None)) daa.pipe(func).plot.contourf(cmap=cmap, robust=True, levels=21) mapplot() #savefig if 'savefig' in sys.argv or 's' in sys.argv: figname = __file__.replace('.py', f'.png') if 'overwritefig' in sys.argv or 'o' in sys.argv: wysavefig(figname, overwritefig=True) else: wysavefig(figname) tt.check(f'**Done**') print() if 'notshowfig' in sys.argv: pass else: plt.show()