So visualisieren Sie einen NetCDF-Datensatz
Angenommen, ich habe eine ziemlich große NetCDFDatei, die ich als Datensatz mit öffne xarray.
import xarray
nc_in = r"....\D_P_WGS84_comp.nc"
nc_ds = xarray.open_dataset(nc_in)
Es besteht aus mehreren Rastervariablen mit jeweils einem Band, x-, y-Koordinaten und einem crs (4326):
nc_ds
Angenommen, ich möchte dies ganz einfach in meinem Python-Notizbuch visualisieren. Ich möchte nicht wirklich Grundkarten oder Legenden oder ähnliches hinzufügen. Ich habe versucht, show(nc_ds) but throws an errors AttributeError einfach auszuführen: Das Objekt 'Dataset' hat kein Attribut 'shape'`. Mir ist auch aufgefallen, dass die Maße eingefroren sind. Was ist der einfachste Weg, um diesen Datensatz oder eine einzelne Variable davon in Python zu visualisieren? Gibt es eine Mod- oder Paketerweiterung, die dies tun würde?
Antworten
Da eine DatasetVariable mehr als eine Variable enthalten kann, ist es für Software nicht trivial zu wissen, was sie anzeigen soll. Wenn Sie jedoch eine der Variablen auswählen DataArray, kann diese problemlos angezeigt werden (sofern sie in einem geeigneten Format vorliegt).
Die Variablen von a Datasetsind über sein data_varsAttribut verfügbar . Dadurch werden die Variablen als DataArrays in einem Diktat mit den Variablennamen als Schlüssel verfügbar gemacht.
Schritt für Schritt:
variables = nc_ds.data_vars
f02_nbr_e0002 = variables['F02_NBR_E0002']
show(f02_nbr_e0002)
Effizienter Oneliner:
show(nc_ds.data_vars['F02_NBR_E0002'])