Cela dépend fortement du type d'outils que vous souhaitez utiliser. C'est une tâche très triviale avec la plupart des langages de programmation ("Python/R/..."), si vous voulez un outil en ligne de commande, vous pouvez regarder NCO et surtout sa commande ncks
(NetCDF Kitchen Sink).
Par exemple, si j'ai un fichier NetCDF (sortie ncdump -h
)
netcdf u.xz {
dimensions:
xh = 256 ;
y = 1 ;
z = 160 ;
time = UNLIMITED ; // (481 currently)
variables:
float time(time) ;
string time:units = "Seconds since start of experiment" ;
float xh(xh) ;
float y(y) ;
float z(z) ;
float u(time, z, xh, y) ;
}
Je peux extraire par exemple le premier enregistrement de temps à l'aide:
ncks -d time,0,0 u.xz.nc test.nc
Ou, quelque chose de plus proche de votre question, sélectionner le premier enregistrement temporel et découper les dimensions spatiales:
ncks -d time,0,0 -d xh,0,5 -d z,0,5 u.xz.nc test.nc
Chaque fois que le fichier NetCDF manipulé est écrit dans un nouveau fichier. Vous pouvez laisser le dernier argument test.nc
pour vider la sortie à l'écran, ou simplement vider la sortie de test.nc
avec ncdump
.
Cher Charlie, je suis au courant de cette méthode . Ce que je veux explicitement, c'est utiliser ncdump puis visualiser les valeurs dans la région demandée sans créer de fichier out.nc. –
Je ne suis pas sûr de ce que vous voulez dire par visualiser. Contrairement à ncdump, ncks affichera l'hyperslab des valeurs à afficher au format CDL (sans générer de fichier .nc) si vous lui donnez le commutateur --cdl: ncks --cdl -d time, 0 -d rlat, 0,5 - d rlon, 0,5 in.nc –