This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hi Muhammad, Yeah, I should have expected that my explanation wouldn't be quite enough. The truth is that what you're trying to do-- while technically possible--is very tedious using OPeNDAP. We've developed another webapp for THREDDS called the Netcdf Subset Service (NCSS) that makes it easy. Here [1] is an example. Unfortunately, the THREDDS server you're downloading from doesn't have NCSS enabled, so we'll have to get by with OPeNDAP. 1. If you look at the text box below the time variable, you'll see its metadata: long_name: Time delta_t: 0000-01-00 00:00:00 avg_period: 0000-01-00 00:00:00 prev_avg_period: 0000-00-01 00:00:00 standard_name: time axis: T units: hours since 1800-01-01 00:00:0.0 actual_range: 1297320.0, 1892664.0 _ChunkSize: 1 The key attribute here is "units: hours since 1800-01-01 00:00:0.0". That's how you interpret the values. The first time is "1297320.0 hours since 1800-01-01" (this is a UDUNITS time [2], if you're curious). I assume you'll want to convert this to a string time, and you can do so on this page [3]. "1297320.0 hours since 1800-01-01" corresponds to "1948-01-01T00:00:00Z". 2. If you look at the declaration of "air" at the bottom of the page: Float32 air[time = 816][level = 17][lat = 73][lon = 144]; you'll see that "air" is a 4-dimensional array with dimensions: time, level, lat, and lon. Each box corresponds to a dimension and it is where you specify a range of indices for that dimension. So, it seems like you have the right idea with your example sections except for time, which I discussed above. 3. When you submit a request, notice the URL that your browser goes to. It'll be something like: http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.derived/pressure/air.mon.mean.nc.ascii?air[0:1:10][0:1:16][21:1:28][24:1:31] At the end of the URL, you'll find the sections that you specified in the previous page. It looks like for each of the requests you want to do, only the time section will vary. So, just figure out what time sections you need beforehand (e.g. one for Jan 1985, one for Feb 1985, etc), and you should be able to construct the URLs of the the requests. Then just put those URLs in a script (Bash, Python, whatever) and you can download the data in bulk. Cheers, Christian [1] http://thredds.ucar.edu/thredds/ncss/grib/nexrad/composite/unidata/NEXRAD_Unidata_Reflectivity-20160111/TP/dataset.html [2] http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/build/ch04s04.html [3] http://coastwatch.pfeg.noaa.gov/erddap/convert/time.html Ticket Details =================== Ticket ID: MHJ-779129 Department: Support THREDDS Priority: High Status: Closed