import netCDF4
from pylab import *
#aggregation
url='http://opendap.co-ops.nos.noaa.gov/thredds/dodsC/SJROFS/fmrc/Aggregated_7_day_SJROFS_Fields_Forecast_best.ncd'
#non aggregation
url='http://opendap.co-ops.nos.noaa.gov/thredds/dodsC/NOAA/SJROFS/MODELS/201405/nos.sjrofs.fields.forecast.20140506.t17z.nc'
nc = netCDF4.Dataset(url)
ncv = nc.variables
t=ncv['time'][:]
plot(t,'o-')
[<matplotlib.lines.Line2D at 0x37bce10>]
plot(diff(t),'o-')
[<matplotlib.lines.Line2D at 0x43d0ed0>]
dt= diff(t)
dt[:10]*3600*24 # delta t in seconds
array([ 3601.7578125 , 3599.12109375, 3599.12182617, 3601.7578125 , 3599.12109375, 3599.11962891, 3601.7578125 , 3599.12109375, 3599.12109375, 3601.7578125 ], dtype=float32)
lon = ncv['lon'][:]
lat = ncv['lat'][:]
lon.min()
-81.761909
lon.max()
0.1
lat.min()
-85.488747
lat.max()
30.497652
shape(lon)
(105, 188)
lon[0:2,0:2
]
array([[ 0., 0.], [ 0., 0.]], dtype=float32)
lon=ma.masked_where(lon>=0,lon)
lat=ma.masked_where(lat<=0,lat)
lon.min()
-81.761909
lon.max()
-81.307274
lat.min()
29.56171
lat.max()
30.497652
plot(lon,lat,lon.T,lat.T);