Comment visualiser un ensemble de données NetCDF
Supposons que j'ai un NetCDFfichier assez volumineux que j'ouvre en tant qu'ensemble de données à l'aide de xarray.
import xarray
nc_in = r"....\D_P_WGS84_comp.nc"
nc_ds = xarray.open_dataset(nc_in)
Il est composé de plusieurs variables raster, chacune avec une seule bande, des coordonnées x, y et un crs (4326):
nc_ds
Supposons que je veuille visualiser cela très simplement dans mon bloc-notes Python. Je ne veux pas vraiment ajouter de fonds de carte ou de légendes ou quoi que ce soit du genre. J'ai essayé d'exécuter simplement show(nc_ds) but throws an errors AttributeError: l'objet 'Dataset' n'a pas d'attribut 'shape'. J'ai également remarqué que les dimensions sont figées. Quelle est la manière la plus simple de visualiser cet ensemble de données ou une seule variable de celui-ci en Python? Existe-t-il un module ou une extension de package qui ferait cela?
Réponses
Comme un Datasetpeut contenir plus d'une variable, il ne serait pas anodin pour un logiciel de savoir ce que vous voulez qu'il affiche. Si vous sélectionnez cependant l'une de ses variables DataArray, elle peut facilement être affichée (si elle est dans un format approprié).
Les variables de a Datasetsont disponibles via son data_varsattribut. Cela expose les variables comme DataArrays dans un dict avec les noms de variables comme clés.
Pas à pas:
variables = nc_ds.data_vars
f02_nbr_e0002 = variables['F02_NBR_E0002']
show(f02_nbr_e0002)
Oneliner efficace:
show(nc_ds.data_vars['F02_NBR_E0002'])