我试图读取我的nc文件。它有3个变量,它们是:
zonalWind(height,lon,lat)
meridionalWind(height,lon,lat)
verticalVelocity(height_2,lon,lat)
下面是我读取数组的代码:
vtkNetCDFCFReader *reader = vtkNetCDFCFReader::New();
reader->SetFileName(fileName);
reader->SetOutputTypeToStructured();
reader->UpdateMetaData();
reader->Update();
reader->Print(std::cout);
reader->SetVariableArrayStatus("verticalVelocity", 1);
reader->SetVariableArrayStatus("zonalWind", 1);
reader->SetVariableArrayStatus("meridionalWind", 1);
但是由于尺寸问题,我在termianl跳过verticalVelocity数组时遇到以下错误:
vtkNetCDFCFReader (0x7fb1f1517350): Variable verticalVelocity dimensions (height_2 lat lon) are different than the other variable dimensions (height lat lon). Skipping
我可以在所有3个可变数据中读取任何方法而不是“跳过”,并在之后进行一些处理吗?
TIA
答案 0 :(得分:0)
没有。您应该创建2个vtkNetCDFCFReader实例并读取每个实例具有相同尺寸的变量。
如果要仅提取较大网格的一部分并在较小网格上使用这些值,请将vtkExtractGrid过滤器附加到一个或两个读取器输出以获取相同大小的数据集。最后,对结果运行vtkMergeArrays过滤器,以生成包含所有数组值的单个数据集。