Summary
The network Common Data Form (netCDF) is a binary, self-describing, machine-independent file format for storing scientific data.
Syntax
NetCDFFileProperties (netcdffile)
Parameter | Explanation | Data Type |
netcdffile | The input netCDF file. | String |
Method Overview
Method | Explanation |
getAttributeNames ({variable_name}) | Gets the attribute names of a variable in a NetCDF file. |
getAttributeValue (variable_name, attribute_name) | Get the value of an attribute. |
getDimensionIndex (dimension_name, value) | Gets the dimension index. |
getDimensionSize (dimension_name) | Gets the dimension size. |
getDimensionValue (dimension_name, index) | Gets the dimension value. |
getDimensions () | Gets the dimensions. |
getDimensionsByVariable (variable_name) | Gets the dimensions by variable. |
getFieldType (name) | Gets the field type of a variable or dimension. |
getSpatialReference (variable_name, x_dimension, y_dimension) | Gets the spatial reference of a variable. |
getVariables () | Gets the variables. |
getVariablesByDimension (dimension_name) | Get the variables by dimension. |
Methods
getAttributeNames ({variable_name})
Parameter | Explanation | Data Type |
variable_name [variable_name,...] | Variable name of the NetCDF file. | String |
Data Type | Explanation |
String | The attribute names of the variable. |
getAttributeValue (variable_name, attribute_name)
Parameter | Explanation | Data Type |
variable_name | Variable name of the netCDF file. | String |
attribute_name | Attribute name of the netCDF file. | String |
Data Type | Explanation |
Object | The value of the attribute. The type of returned value depends on the dimension type. |
getDimensionIndex (dimension_name, value)
Parameter | Explanation | Data Type |
dimension_name | Dimension name of the NetCDF file. | String |
value | The dimension value. | Integer |
Data Type | Explanation |
Integer | The dimension index. |
getDimensionSize (dimension_name)
Parameter | Explanation | Data Type |
dimension_name | Dimension name of the NetCDF file. | String |
Data Type | Explanation |
Integer | The dimension size. |
getDimensionValue (dimension_name, index)
Parameter | Explanation | Data Type |
dimension_name | Dimension name of the NetCDF file. | String |
index | The index position. | Integer |
Data Type | Explanation |
Object | The dimension value. The type of returned value depends on the dimension type. |
getDimensions ()
Data Type | Explanation |
String | List of dimensions. |
getDimensionsByVariable (variable_name)
Parameter | Explanation | Data Type |
variable_name | Variable name of the NetCDF file. | String |
Data Type | Explanation |
String | The dimensions by variable. |
getFieldType (name)
Parameter | Explanation | Data Type |
name | Variable or dimension name of the NetCDF file. | String |
Data Type | Explanation |
String | The field type. |
getSpatialReference (variable_name, x_dimension, y_dimension)
Parameter | Explanation | Data Type |
variable_name | Variable name of the NetCDF file. | String |
x_dimension | The x-dimension. | Integer |
y_dimension | The y-dimension. | Integer |
Data Type | Explanation |
SpatialReference | The spatial reference of a variable. |
getVariables ()
Data Type | Explanation |
String | List of variables. |
getVariablesByDimension (dimension_name)
Parameter | Explanation | Data Type |
dimension_name | Variable name of the netCDF file | String |
Data Type | Explanation |
String | List of variables by dimension |
Code sample
Display properties of netCDF file.
import arcpy
in_netcdf = "c:/netCDF/crwr.nc"
nc_fp = arcpy.NetCDFFileProperties(in_netcdf)
# Get Variables
for nc_var in nc_fp.getVariables():
print("Variable: {}".format(nc_var))
print("\tVariable type: {}".format(nc_fp.getFieldType(nc_var)))
# Get dimensions by variable
for nc_dim_by_var in nc_fp.getDimensionsByVariable(nc_var):
print("Dimension: {}".format(nc_dim_by_var))
print(nc_fp.getAttributeValue(nc_var, "units"))
# Get Variable Attributes
for nc_va_name in nc_fp.getAttributeNames(nc_var):
print("Attribute Name: {}".format(nc_va_name))
# Get Dimensions
for nc_dim in nc_fp.getDimensions():
print("Dimension: {}".format(nc_dim))
print("\tDimension size: {}".format(nc_fp.getDimensionSize(nc_dim)))
print("\tDimension type: {}".format(nc_fp.getFieldType(nc_dim)))
for i in range(0, nc_fp.getDimensionSize(nc_dim)):
nc_dim_value = nc_fp.getDimensionValue(nc_dim, i)
print("\tDimension value: {}".format(nc_dim_value))
print("\tDimension index: {}".format(
nc_fp.getDimensionIndex(nc_dim, nc_dim_value)))
# Get Variable by dimension
for nc_vars_by_dim in nc_fp.getVariablesByDimension(nc_dim):
print("\tVariable by dimension: {}".format(nc_vars_by_dim))
# Get Global Attribues
for nc_att_name in nc_fp.getAttributeNames(""):
print("Attribute Name: {}".format(nc_att_name))
print(nc_fp.getAttributeValue("", nc_att_name))