Multidimensional Data
and GIS
Steve Kopp
Nawajish Noman
ESRI
Overview
Introductionto Multidimensional Data
What is netCDF?
Some netCDF data sources
Working with netCDF in ArcGIS
Multidimensional Data
T
Data cube (3D) or hypercube (4D,5D…)
• Temperature varying with time
Y X
Z T
• Temperature varying with time and altitude
Y X
Gridded Data
Raster
Point Features
Multidimensional Data
Time = 3
Time = 2
Time = 1
Multidimensional Data
143 243 343 443
133 233 333 433
142 242 342 442
123 223 323 423
132 232 332 432
113 213 313 413
122 222 322 422
141 241 341 441 Time = 3
112 212 312 412
131 231 331 431
Time = 2
121 221 321 421
111 211 311 411
Time = 1
Multidimensional Data
Time = 3
143 243 343 443
Time = 2
133 233 333 433
Y 142 242 342 442 Time
123 223 323 423
Time = 1
132 232 332 432
141 241 341 441 113 213 313 413
122 222 322 422
131 231 331 431
112 212 312 412
121 221 321 421
111 211 311 411
X
Multidimensional Data
141 241 341 441
131 231 331 431
121 221 321 421
Y
111 211 311 411
Time Time = 1
142 242 342 442
132 232 332 432
122 222 322 422
112 212 312 412
Time = 2
143 243 343 443
X
133 233 333 433
Data Cube 123 223 323 423
113 213 313 413
Time = 3
Time Slices
Multidimensional Data
143 243 343 443
Altitude
133 233 333 433 Time
Y 142 242 342 442
123 223 323 423
132 232 332 432
113 213 313 413
141 241 341 441
122 222 322 422
131 231 331 431
112 212 312 412
121 221 321 421
111 211 311 411
X
Multidimensional Data Formats
• NetCDF (network Common Data Form)
• HDF (4.x and previous releases), HDF-EOS, HDF5
(Hierarchical Data Format)
• GRIB, GRIB II (GRIdded Binary)
What is NetCDF?
NetCDF (network Common Data Form)
A platform independent format for representing multi-
dimensional array-orientated scientific data.
Self Describing - a netCDF file includes information about the
data it contains.
Direct Access - a small subset of a large dataset may be
accessed efficiently, without first reading through all the
preceding data.
Sharable - one writer and multiple readers may simultaneously
access the same netCDF file.
NetCDF is new to the GIS community but widely used by
scientific communities for around many years
Why NetCDF?
Most commonly used format in the oceanographic and
atmospheric science for observational data and numerical
modeling
• The National Center for Atmospheric Research (NCAR)
• University Corporation for Atmospheric Research (UCAR)
NOAA's Climate Diagnostics Center (CDC)
• Los Alamos National Laboratory (LANL)
• The National Center for Supercomputing Applications
• US Air Force and Navy
• Atmospheric Research in Australia
• Australia Defense
• UK Hydrographic Office
• NATO
• ...
What is a NetCDF file?
NetCDF is a binary file
A NetCDF file consists of:
Global Attributes: Describe the contents of the file
Dimensions: Define the structure of the data
(e.g Time, Depth, Latitude, Longitude)
Variables: Holds the data in arrays shaped
by Dimensions
Variable Attributes: Describes the contents of
each variable
CDL (network Common Data form Language) description takes the following
form
netCDF name {
dimensions: ...
variables: ...
data: ...
}
Storing Data in a netCDF File
netcdf mynetcdf{
dimensions:
143 243 343 443
X=4;
Y=4; 133 233 333 433
Time=UNLIMITED; Y 142 242 342 442 Time
123 223 323 423
variables:
132 232 332 432
float X(X); 113 213 313 413
141 241 341 441
float Y(Y); 122 222 322 422
int Time(Time); 131 231 331 431
112 212 312 412
float Temperature(Time, Y, X);
121 221 321 421
data:
X = 10, 20, 30, 40; 111 211 311 411
Y = 110, 120, 130, 140; X
Time = 31, 59, 90;
}
Storing Data in a netCDF File
netcdf mynetcdf{
dimensions:
143 243 343 443
X=4;
Y=5; 133 233 333 433
Time=UNLIMITED; Y 142 242 342 442 Time
123 223 323 423
variables:
132 232 332 432
float X(X); 141 241 341 441 113 213 313 413
float Y(Y); 122 222 322 422
int Time(Time); 131 231 331 431
112 212 312 412
float Temperature(Time, Y, X);
121 221 321 421
data:
X = 10, 20, 30, 40;
Y = 110, 120, 130, 140; X
Time = 31, 59, 90;
Temperature = Time = 1
111,211,311,411;
} Y=1
X = 1 to 4
Storing Data in a netCDF File
netcdf mynetcdf{
dimensions: 143 243 343 443
X=4;
Y=5; 133 233 333 433
Y
Time=UNLIMITED; 142 242 342 442 Time
123 223 323 423
variables: 132 232 332 432
float X(X); 113 213 313 413
float Y(Y); 122 222 322 422
int Time(Time); 112 212 312 412
float Temperature(Time, Y, X);
data:
X = 10, 20, 30, 40;
Y = 110, 120, 130, 140; X
Time = 31, 59, 90;
Temperature = Time = 1
111,211,311,411,121,221,321,421,
131,231,331,431,141,241,341,441; Y = 1 to 4
}
X = 1 to 4
Storing Data in a netCDF File
netcdf mynetcdf{
dimensions:
X=4;
Y=5;
Time=UNLIMITED; Y Time
variables:
float X(X);
float Y(Y);
int Time(Time);
float Temperature(Time, Y, X);
data:
X = 10, 20, 30, 40;
Y = 110, 120, 130, 140; X
Time = 31, 59, 90;
Temperature = Time = 1 to 3
111,211,311,411,121,221,321,421,
131,231,331,431,141,241,341,441, Y = 1 to 4
112,212,312,412,122,222,322,422,
132,232,332,432,142,242,342,442, X = 1 to 4
113,213,313,413,123,223,323,423,
133,233,333,433,143,243,343,443;
}
NetCDF Conventions
• CF Conventions (Recommended, if applicable)
• COARDS Conventions (1995 standard that CF Conventions extends
and generalizes)
• GDT Conventions (1999 standard that CF Conventions extends and
generalizes)
• CDC Conventions (for gridded data, compatible with but more
restrictive than COARDS)
• NCAR-RAF Conventions for Aircraft Data
• AMBER Trajectory Conventions for molecular dynamics simulations
• NUWG Conventions (1992-1995 effort to create some observational
data conventions)
• PMEL-EPIC Conventions
• GDV Conventions (deprecated)
CF Convention
Climate and Forecast (CF) Convention
[Link]
Initially developed for
• Climate and forecast data
• Atmosphere, surface and ocean model-generated data
• Comparable observational datasets
• The CF conventions generalize and extend the COARDS
(Cooperative Ocean/Atmosphere Research Data Service)
convention.
• CF is now the most widely used conventions for geospatial
netCDF data. It has the best coordinate system handling.
Current and Future Standards
Fill in details…
Galeon WCS
OGC testbed
CF v2
NetCDF Data Sources
• Community Climate Systems Model
(CCSM) [Link] [Link]
• The CCSM is fully-coupled, global climate model that provides
state-of-the-art computer simulations of the Earth's past, present,
and future climate states.
• 100 yrs of climate change forecast data (2000-2099)
• Control runs (1870-1999) and scenario runs
• Temperature, precipitation flux, surface snow thickness, snowfall
flux, cloud water content, etc.
• Program for Climate Model Diagnosis and
Intercomparison (PCMDI) [Link]
NetCDF Data Sources
• Vegetation and Ecosystem Modeling and Analysis
Project (VEMAP)
[Link]
• VEMAP was a large, collaborative, multi-agency program to
simulate and understand ecosystem dynamics for the continental
United States.
• The VEMAP Data Portal is a central collection of files maintained
and serviced by the NCAR Data Group
• Climate data interval: Annual, monthly, and daily.
• Data type: Historical and model results
• Data: Temperature, irradiance, precipitation, humidity, incident
solar radiation, vapor pressure, elevation, land area, vegetation,
water holding capacity of soil, etc.
NetCDF Data Sources
• British Atmospheric Data Center (BADC)
[Link]
• The role of the BADC is to assist UK atmospheric researchers to
locate, access and interpret atmospheric data.
• Many datasets are publicly available but datasets marked with
key symbol have restricted access.
• Datasets are organized by projects or organizations.
• Climatology Interdisciplinary Data Collection (CIDC) has monthly
means of over 70 Climate Parameters.
• Met Office - Historical Central England Temperature Data has
the monthly series, which begins in 1659, is the longest available
instrumental record of temperature in the world. The daily series
begins in 1772.
NetCDF Data Sources
• National Oceanic & Atmospheric Administration (NOAA)
• National Digital Forecast Database (NDFD)
[Link]
• Radar Integrated Display with Geospatial Element (RIDGE)
[Link]
• Precipitation Analysis
[Link]
• Climate Diagnostics Center [Link]
NetCDF in ArcGIS
• NetCDF data is accessed as
• Raster
• Feature
• Table
• Direct read (no scratch file)
• Exports GIS data to netCDF
NetCDF Tools
Toolbox: Multidimension Tools
• Make NetCDF Raster Layer
• Make NetCDF Feature Layer
• Make NetCDF Table View
• Raster to NetCDF
• Feature to NetCDF
• Table to NetCDF
• Select by Dimension
Using NetCDF Data
Behaves the same as any layer or table Display
• Same display tools for raster and feature layers will work on
netCDF raster and netCDF feature layers.
• Graphing
• Driven by the table just like any other chart.
• Animation
• Multidimensional data can be animated through a dimension
(e.g. time, pressure, elevation)
• Analysis Tools
• A netCDF layer or table will work just like any other raster layer,
feature layer, or table. (e.g. create buffers around netCDF points,
reproject rasters, query tables, etc.)
NetCDF Layer/Table Properties
Raster
Feature
Table
Making a NetCDF Raster Layer
• Drag and drop
• Use the tool
Usage: MakeNetCDFRasterLayer <in_netCDF_file> <variable> <x_dimension>
<y_dimension> <out_raster_layer> {band_dimension} {Dimension {Value};Dimension
{Value}...} {BY_VALUE | BY_INDEX}
Changing Time Slice
(Selecting a different “dimension value”)
143 243 343 443
133 233 333 433
Y 142 242 342 442 Time
123 223 323 423
132 232 332 432
141 241 341 441 113 213 313 413
122 222 322 422
131 231 331 431
112 212 312 412
121 221 321 421
111 211 311 411
Time = 1 X
NetCDF and Spatial Reference
• Geographic Coordinate Systems (GCS)
• X dimension units: degrees_east
• Y dimension units: degrees_north
• Projected Coordinate Systems (PCS)
• X dimension standard_name: projection_x_coordinate
• Y dimension standard_name: projection_y_coordinate
• Variable has a grid_mapping attribute.
• CF conventions currently supports only eight predefined
coordinate systems
• Undefined
• If not GCS or PCS
• ArcGIS writes (and recognizes) PE String as a variable attribute.