【发布时间】:2013-03-06 00:36:54
【问题描述】:
我已经看到了以下使用excel 访问netcdf 文件的示例。
我想知道是否可以根据特定索引访问数据的某个部分(例如,来自 4D 变量的地图上某个点的参数的时间序列)
在我看来,没有任何编码是不可能的?
有什么想法吗?
【问题讨论】:
我已经看到了以下使用excel 访问netcdf 文件的示例。
我想知道是否可以根据特定索引访问数据的某个部分(例如,来自 4D 变量的地图上某个点的参数的时间序列)
在我看来,没有任何编码是不可能的?
有什么想法吗?
【问题讨论】:
我知道有两种方法可以使用 Excel 从 Unidata 的 THREDDS 数据服务器访问数据:
1) 提取时间序列使用来自 OpenDAP 的 ASCII 响应,如下所述: https://publicwiki.deltares.nl/display/OET/OPeNDAP+access+with+Excel。这种方法适用于任何 OPeNDAP 服务器。
2) 使用 THREDDS 数据服务器提供的 NetCDF-Subset Service(这里我使用的是最新的 TDS,版本 4.3)。
因此,如果您访问 THREDDS 提供的特定数据集,例如:
然后点击 NetcdfSubset 服务,然后点击“Grid as Point Dataset”,你会得到这个表单:
http://geoport-dev.whoi.edu/thredds/ncss/grid/coawst_2_2/fmrc/coawst_2_2_best.ncd/dataset.html
您可以在其中提取最接近特定位置的时间序列,并选择 CSV 作为输出类型,当然可以轻松将其加载到 Excel 中。好处是这个表单只生成一个 RESTful URL 查询,可以通过代码修改或轻松生成。因此,例如,此查询提取变量temp 的时间序列,其在地表附近的 6 小时间隔内且最接近 -70.6W、42.3N:
产生:
date,lat[unit="degrees_north"],lon[unit="degrees_east"],vertCoord[unit=""],temp[unit="Celsius"]
2011-08-01T00:00:00Z,42.31439418116631,-70.58628311827651,-0.03125,18.44405174255371
2011-08-01T01:00:00Z,42.31439418116631,-70.58628311827651,-0.03125,18.361846923828125
2011-08-01T02:00:00Z,42.31439418116631,-70.58628311827651,-0.03125,18.31492805480957
2011-08-01T03:00:00Z,42.31439418116631,-70.58628311827651,-0.03125,18.254281997680664
2011-08-01T04:00:00Z,42.31439418116631,-70.58628311827651,-0.03125,18.24005889892578
2011-08-01T05:00:00Z,42.31439418116631,-70.58628311827651,-0.03125,18.186853408813477
2011-08-01T06:00:00Z,42.31439418116631,-70.58628311827651,-0.03125,18.114046096801758
有关 NetCDF 子集服务的文档在这里: http://www.unidata.ucar.edu/projects/THREDDS/tech/interfaceSpec/NetcdfSubsetService_4_3.html#Vertical
我已向 Unidata 报告了 NetCDF 子集服务中的垂直坐标存在一些问题:
我已将所有这些问题报告给 Unidata。
【讨论】: