#!/usr/bin/env python # Wenchang Yang (wenchang@princeton.edu) # Tue May 16 11:21:36 EDT 2023 if __name__ == '__main__': import sys,os from misc.timer import Timer tt = Timer(f'[{os.getcwd()}] 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 wython = '/tigress/wenchang/wython' if wython not in sys.path: sys.path.append(wython); print('added to python path:', wython) #from misc import get_kws_from_argv from modelout import get_modelout_data # if __name__ == '__main__': tt.check('end import') # #start from here ncfile_location = 'african_cities_latlon.nc' ds = xr.open_dataset(ncfile_location).load() lat, lon = ds.lat, ds.lon lon = lon.where(lon>0, other=lon+360) #lon range from -180/180 to 0/360 daname = 'zsurf' dsname = 'atmos_month' model = 'AM2.5C360' expname = 'amipHadISSTrcp45_tigercpu_intelmpi_18_1080PE' years = range(1871, 1871+1)#2100+1) ens = range(16, 16+1)#18+1) funcname = 'AfricanCities' def func(da): """interpolate grid data onto locations defined by ncfile_location""" return da.rename(grid_xt='lon', grid_yt='lat').interp(lat=lat, lon=lon) if __name__ == '__main__': #from wyconfig import * #my plot settings da = get_modelout_data(daname=daname, model=model, expname=expname, dsname=dsname, years=years, ens=ens, funcname=funcname, func=func) #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 or 'n' in sys.argv: pass else: if 'plt' in globals(): plt.show()