通过 netcdf 从 GRIB 文件中读取行和列索引值
Reading row and column index values from GRIB file via netcdf
最近我一直在处理 netcdf 文件,我正在使用 this 库。我可以这样打开和读取数据:
NetcdfFile ncfile = NetcdfFile.open(inputPath);
我能够列出变量并在数据中获取所需的变量:
List<Variable> variables = ncfile.getVariables();
Variable tcc = ncFile.findVariable("tcc_0");
我也可以得到变量的等级和形状,我可以通过这个得到table的数据:
int[] readOrigin = new int[2];
int[] readShape = new int[2];
readOrigin[0] = desiredRow;
readOrigin[1] = 0;
readShape[0] = 1;
readShape[1] = numberOfColumns;
Array arr = tcc.read(readOrigin, readShape);
此代码获取第“desiredRow”行的所有值,我可以遍历 arr
并找到每列的每个特定值。
但是,我想获取列和行索引的所有值。当我想实现 table 的 [0][0] 值时,我可以实现它。通过我无法实现所有的行和列索引值。我需要为行索引值获取 32.035、32.08,...,为列获取相同值。
感谢任何帮助。
经过一番研究,我找到了获取它们的方法。它们被称为根组,其中包含一维数据,这正是我所需要的。
Variable rootGroupLatitudeVar = ncFile.getRootGroup().findVariableLocal("latitude");
Array latitudeArr = rootGroupLatitudeVar.read();
int latitudeArrSize = rootGroupLatitudeVar.getShape(0);
..iteration
最近我一直在处理 netcdf 文件,我正在使用 this 库。我可以这样打开和读取数据:
NetcdfFile ncfile = NetcdfFile.open(inputPath);
我能够列出变量并在数据中获取所需的变量:
List<Variable> variables = ncfile.getVariables();
Variable tcc = ncFile.findVariable("tcc_0");
我也可以得到变量的等级和形状,我可以通过这个得到table的数据:
int[] readOrigin = new int[2];
int[] readShape = new int[2];
readOrigin[0] = desiredRow;
readOrigin[1] = 0;
readShape[0] = 1;
readShape[1] = numberOfColumns;
Array arr = tcc.read(readOrigin, readShape);
此代码获取第“desiredRow”行的所有值,我可以遍历 arr
并找到每列的每个特定值。
但是,我想获取列和行索引的所有值。当我想实现 table 的 [0][0] 值时,我可以实现它。通过我无法实现所有的行和列索引值。我需要为行索引值获取 32.035、32.08,...,为列获取相同值。
感谢任何帮助。
经过一番研究,我找到了获取它们的方法。它们被称为根组,其中包含一维数据,这正是我所需要的。
Variable rootGroupLatitudeVar = ncFile.getRootGroup().findVariableLocal("latitude");
Array latitudeArr = rootGroupLatitudeVar.read();
int latitudeArrSize = rootGroupLatitudeVar.getShape(0);
..iteration