通过 netcdf 从 GRIB 文件中读取行和列索引值

问题描述

最近我一直在处理 netcdf 文件,我正在使用 this 库。我能够像这样打开和读取数据:

NetcdfFile ncfile = NetcdfFile.open(inputPath);

我能够列出变量并在数据中获取所需的变量:

List<Variable> variables = ncfile.getvariables();
Variable tcc = ncFile.findVariable("tcc_0");

我也可以获得变量的等级和形状,我可以通过这个获取表格的数据:

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 并找到每列的每个特定值。

但是,我想获取列和行索引的所有值。当我想实现表的 [0][0] 值时,我可以实现。我无法获得所有行和列索引值。我需要得到 32.035,32.08,... 对于行索引值和相同的列。

感谢任何帮助。

enter image description here

解决方法

经过一番研究,我找到了获取它们的方法。它们被称为根组,其中包含一维数据,这正是我所需要的。

Variable rootGroupLatitudeVar = ncFile.getRootGroup().findVariableLocal("latitude");
Array latitudeArr = rootGroupLatitudeVar.read();
int latitudeArrSize = rootGroupLatitudeVar.getShape(0);

..iteration

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...