Mit einem Voxel-Layer werden volumetrische regelmäßig gerasterte Daten dargestellt. Das Format netCDF ist ein selbstbeschreibendes Dateiformat zum Speichern array-orientierter multidimensionaler Daten, das speziell für wissenschaftliche Variablen wie Temperatur, Luftfeuchtigkeit, Druck und Bodenart entwickelt wurde. Das netCDF-Format ist ein weit verbreitetes offenes Datenformat. Damit sichergestellt ist, dass die Daten als Voxel-Layer gelesen werden können, müssen sie der Konvention "Climate and Forecast (CF)" folgen. Zurzeit werden nur netCDF-Daten, die die CF-Vorgaben erfüllen, ohne zusätzliche Variablen als Datenquelle, als Quelle für einen Voxel-Layer akzeptiert.
In der Learn ArcGIS-Lektion Meeresökosysteme mit Voxeln visualisieren lernen Sie mehr darüber, wie Sie eine NetCDF-Datei erstellen und die Daten als Voxel-Layer visualisieren.
Multidimensionale Daten können viele Variablen in derselben Datei enthalten, und jede Variable verfügt über ihre eigenen eindeutigen Dimensionen. Mit netCDF-Daten können Sie die erforderlichen Informationen zu jeder Variablen ermitteln, wie etwa ihre Dimensionen, die Einheiten der einzelnen Dimensionen und wann sie erfasst wurde. Eine netCDF-Datei muss gerastert sein, um als Voxel-Layer visualisiert werden zu können. Beim Hinzufügen eines Voxel-Layers werden die Variablen, die gerastert sind und derselben Dimension angehören, im Dialogfeld Voxel-Layer hinzufügen angezeigt.
Weitere Informationen zur netCDF-Datenspeicherung finden Sie unter Grundlagen der netCDF-Datenspeicherung.
Die netCDF-Begriffe finden Sie unter Grundlegende netCDF-Terminologie.
Mit dem CF Compliance Checker können Sie netCDF-Dateien untersuchen.
Sie können netCDF-Dateien mit der netCDF4-Bibliothek von Python oder dem Programm toolsUI von Unidata untersuchen, in denen die verschiedenen Aspekte einer netCDF-Datei in einem umfassenden Format dargestellt sind.
Erforderliche Daten aus netCDF-Dateien
Zu erstellende Voxel-Datenstruktur | Erforderliche netCDF-Koordinatenvariablen | Erforderliche Attribute von Koordinatenvariablen | Beispieldaten |
---|---|---|---|
float x | :units |
dimensions: z = 2; y = 33; lon = 33; variables: float z(z=2); float lat(lat=33); :units = "degrees_north"; float lon(lon=33); :units = "degrees_east"; int temp(z=2, lat=33, lon=33); | |
float y | :units | ||
float z | :units :positive | ||
float x | :units | dimensions: time = 2; y = 33; x = 33; variables: float time(time=2); :units = "hours since 1990-01-01T00:00:00"; float y(y=33); :units = "degrees_north"; float x(x=33); :units = "degrees_east"; int temp(time=2, y=33, x=33); | |
float y | :units | ||
double time | :units | ||
float x | :units | dimensions: level = 3; y = 33; x = 33; variables: float level(level=3); float y(y=33); :units = "degrees_north"; float x(x=33); :units = "degrees_east"; int temp(level=3, y=33, x=33); | |
float y | :units | ||
float level | :units :positive | ||
float x | :units | dimensions: time = 2; z = 3; y = 33; x = 33; variables: float time(time=2); :units = "hours since 1990-01-01T00:00:00"; float z(z=3); float y(y=33); :units = "degrees_north"; float x(x=33); :units = "degrees_east"; int temp(time=2, z=3, y=33, x=33); | |
float y | :units | ||
float z | :units :positive | ||
double time | :units |
Volumetrie
In einer netCDF-Datei verweisen Variablen auf Dimensionen. Variablen, die auf Dimensionen mit demselben Namen verweisen, sind Koordinatenvariablen. Beispielsweise kann eine netCDF-Datei über die als Koordinatenvariablen definierten Breitengrad-, Längengrad-, Zeit- und Ebenendimensionen verfügen. Weitere Variablen, die Werte enthalten, verweisen auf eine Kombination aus Dimensionen. Das in der netCDF-Datei definierte Koordinatensystem kann geographisch oder projiziert sein. Wenn das Koordinatensystem nicht gelesen werden kann, können Sie eine .prj-Datei am Speicherort der netCDF-Datei hinzufügen. Mit der .prj-Datei wird das Koordinatensystem definiert.
Eine Variable wird als Höhenvariable auf Basis eines erkannten Namens oder positiven Attributs behandelt. In vertikalen Koordinatensystemen muss ein positives Attribut verwendet werden, mit dem festgelegt wird, ob die Richtung des steigenden Koordinatenwertes nach oben oder nach unten weist. Vertikale Koordinatensysteme lassen sich außerdem anhand ihrer Einheiten oder des Wertes des Attributs für die Achse erkennen. Hat die netCDF-Variable eine Höhendimension, erfüllt sie das volumetrische Kriterium für die Visualisierung als Voxel-Variable. Wenn die Koordinatenvariablen basierend auf dem Namen oder Einheitenattribut nicht erkannt werden können, lädt das Dialogfeld Multidimensionalen Voxel-Layer hinzufügen keine Variablen, und die netCDF-Datei kann nicht als Voxel-Layer hinzugefügt werden.
Erkannte Namen für Koordinatenvariablen
Koordinatenvariable | Erkannte Namen |
---|---|
X | x, projection_x_coordinate, lon, longitude, grid_longitude |
Y | y, projection_y_coordinate, lat, latitude, grid_latitude |
Z | z, depth, depth_below_geoid, elevation, height, height_above_reference ellipsoid, level, lev |
T | Zeit |
Es gibt unterschiedliche Variablentypen. Enthält die Variable beispielsweise eine Dezimalzahl, werden die Daten als kontinuierliche Daten dargestellt. Handelt es sich bei der Variablen um Text oder eine Ganzzahl, wird angenommen, dass sie diskontinuierliche Daten darstellt. Sie können die Standardeinstellungen ändern, indem Sie einen Voxel-Layer hinzufügen.
Unterstützte Zeitwerte
Der Voxel-Layer unterstützt zurzeit Zeiteinheiten und Zeitzonen, die die CF-Vorgaben erfüllen. Er unterstützt den Standardkalender gemäß Definition in den CF-Konventionen, d. h. eine Mischung aus gregorianischem und julianischem Kalender. Die Zeiteinheiten werden aus den netCDF-Zeitattributen gelesen und in das Datums-/Uhrzeitformat gemäß ISO 8601 konvertiert.
Der Voxel-Layer unterstützt darüber hinaus die klimatologische Zeit gemäß Definition in den CF-Konventionen, wie z. B. wenn das Ursprungsjahr als 0-1-1 aufgeführt ist. Die klimatologische Zeit bildet den 30-Jahres-Durchschnitt ab, mit dem der Klimanormalwert gemäß dem Übereinkommen der Vereinten Nationen definiert wird.