Suite

Existe-t-il des exemples d'interfaces de haut niveau vers NetCDF

Existe-t-il des exemples d'interfaces de haut niveau vers NetCDF


Le R raster package et GDAL ont tous deux des wrappers indépendants autour de NetCDF-4* qui traitent une variable de tableau comme un ensemble de données « complet », c'est-à-dire qu'ils fournissent des objets ou des interfaces qui donnent de manière transparente l'accès à une variable comprenant :

  • variables de dimension
  • métadonnées du système de coordonnées
  • unités de valeur
  • général autres métadonnées

* Je suis également intéressé par les extensions HDF4 et HDF5, mais cela semble moins probable que pour NetCDF-4.

Je vois souvent du code qui les utilise au niveau le plus bas, et j'espère trouver plus d'exemples comme ceux de raster et GDAL qui ont fait abstraction de cela :

## psuedo code load NetCDF nc = open("file.nc") v = getvar(nc, "somevariable") x = getvar(nc, "somevariable_lon") y = getvar(nc, "somevaraible_lat")

etc.

Dans les R raster et dans GDAL, cela ressemble beaucoup plus à une extension d'un raster SIG traditionnel, c'est-à-dire que tout le contexte spatial et les métadonnées sont présents, et s'étend à la 3D et au-dessus. (Il y a des problèmes avec différentes conventions pour les coordonnées rectilignes et curvilignes, mais ce n'est pas mon problème ici).

Existe-t-il d'autres exemples open source dans des langages largement utilisés qui fournissent des interfaces de haut niveau telles que R raster et GDAL ?

Y a-t-il de la capacité dans la bibliothèque NetCDF elle-même pour cet accès de niveau supérieur ? (Je sais utiliser le niveau inférieur pour construire cela, je veux des exemples existants).

J'exclus également les utilisations de GDAL en Python, Perl, C#, etc. - c'est tout simplement GDAL en ce qui me concerne. Je ne suis pas non plus intéressé par les interfaces SIG qui les fournissent via GDAL.

raster :
http://cran.r-project.org/web/packages/raster/index.html

GDAL : http://www.gdal.org

modifier (2017):

Le xarray de Python est un bon exemple


Eh bien, les wrappers Python officiels pour NetCDF4 sont ici :

https://github.com/Unidata/netcdf4-python