NetCDF Points To Feature Class (Discrete Sampling Geometry) (Multidimensional)

Summary

Creates a feature class from points in netCDF files. In the Climate and Forecast (CF) metadata convention, a point is a type of discrete sampling geometry (DSG).

Learn how the Discrete Sampling Geometry (DSG) tools work

Usage

  • In the Climate and Forecast (CF) metadata convention, a point is a single data point, which has no implied coordinate relationship to other points.

  • Discrete sampling geometry (DSG) datasets are characterized by a lower dimensionality than the space-time region where the data is sampled.

  • The input netCDF files should be Climate and Forecast (CF) compliant (CF 1.6 or later). The CF conventions define metadata to describe the data represented by each variable and the spatial and temporal properties of the data.

  • If the input netCDF files are not CF compliant, you can specify an Input Climate and Forecast Metadata (in_cf_metadata in Python) file with additional or altered attributes. The Input Climate and Forecast Metadata file is an XML format file with an .ncml extension. The attributes from this metadata file will extend or override the metadata in the netCDF file. The Input Climate and Forecast Metadata file can also be used to specify a grid mapping variable if the input netCDF file does not have one.

  • Multiple netCDF DSG points files can be converted into a single feature class with a unique instanceID field. For instance variables, matching is done by variable name. That is, if two variables in different netCDF files have the same name, they will be interpreted as representing the same thing.

  • Multiple instance variables can be selected for the Instance Variables (instance_variables in Python) parameter.

  • You can use the Analysis Extent (analysis_extent in Python) parameter to specify the output analysis area explicitly for a stand-alone tool operation or to override the environment setting as part of a workflow. You can specify the extent by typing values, choosing the display extent, selecting a layer, or browsing for an input dataset.

  • The default Analysis Extent value is calculated from the union extent of the input netCDF files.

  • If the extent is not explicitly specified as the parameter value, it will be derived from the analysis environment settings.

  • A 2D or 3D point feature class will be created that contains all the location information along with the data values for the selected Instance Variables (instance_variables in Python) parameter.

  • A data variable in the netCDF file can use a grid_mapping variable to explicitly define the coordinate reference system (CRS) used for the spatial coordinate values. The grid mapping epsg_code attribute can be used to select a GCS or PCS. Also, the grid mapping esri_pe_string, crs_wkt, and spatial_ref attributes can all be used to define either a WKT 1 or WKT 2 string. If any of these attributes are present, no other attributes for the horizontal coordinate system are used. For more information about coordinate reference systems as well as the supported WKIDs, see the Coordinate systems, projections, and transformations topic.

  • If the spatial coordinate values are 3D, the grid_mapping variable should also specify a vertical coordinate system (VCS). A VCS is a combination of a vertical datum, a linear unit of measure, and the direction (up or down) that vertical coordinates increase. The datum is typically obtained from an attribute of the grid mapping variable and the other properties are obtained from the vertical coordinate variable. An arbitrary vertical datum can be specified using a compound WKT string as the value of one of the WKT attributes listed above. A gravity-based datum can be specified using either the geoid_name or geopotential_datum_name attribute. In addition, a tidal datum can be implicitly specified using one of the tidal standard names for the vertical coordinate variable. If no VCS is specified and a vertical coordinate variable is present, Instantaneous Water Level Depth or Height (epsg:5831, epsg:5829) will be selected as the default.

Parameters

LabelExplanationData Type
Input NetCDF Files or Folders

The input netCDF files that will be used to create a feature class. Individual netCDF files, as well as folders that contain multiple netCDF files, can be used.

The input netCDF files must have the same DSG feature type and schema.

Folder; File
Target Workspace

The enterprise or file geodatabase in which the output feature class and table will be created. This must be an existing workspace.

Workspace
Output Point Name

The name of the feature class that will contain the locations from the netCDF variables. These variables will be added as fields from the Instance Variables parameter.

String
Instance Variables
(Optional)

The netCDF variables that differentiate individual features and represent the locations where observations are made. These variables will be added as fields to the output feature class.

String
Include Subdirectories
(Optional)

Specifies whether the files residing in the subdirectories of an input folder will be used.

  • Checked—All netCDF files in all subdirectories will be used.
  • Unchecked—Only files in the input folder will be used. This is the default.
Boolean
Input Climate and Forecast Metadata
(Optional)

The XML format file with an .ncml extension that will supply missing or altered CF information for the input netCDF files.

File
Analysis Extent
(Optional)

The extent that defines the area of the output feature class.

Extent

Derived Output

LabelExplanationData Type
Output Point

The output point feature class.

Feature Class

arcpy.management.NetCDFPointsToFeatureClass(in_files_or_folders, target_workspace, out_point_name, {instance_variables}, {include_subdirectories}, {in_cf_metadata}, {analysis_extent})
NameExplanationData Type
in_files_or_folders
[in_files_or_folders,...]

The input netCDF files that will be used to create a feature class. Individual netCDF files, as well as folders that contain multiple netCDF files, can be used.

The input netCDF files must have the same DSG feature type and schema.

Folder; File
target_workspace

The enterprise or file geodatabase in which the output feature class and table will be created. This must be an existing workspace.

Workspace
out_point_name

The name of the feature class that will contain the locations from the netCDF variables. These variables will be added as fields from the instance_variables parameter.

String
instance_variables
[instance_variables,...]
(Optional)

The netCDF variables that differentiate individual features and represent the locations where observations are made. These variables will be added as fields to the output feature class.

String
include_subdirectories
(Optional)

Specifies whether the files residing in the subdirectories of an input folder will be used.

  • INCLUDE_SUBDIRECTORIESAll netCDF files in all subdirectories will be used.
  • DO_NOT_INCLUDE_SUBDIRECTORIESOnly files in the input folder will be used. This is the default.
Boolean
in_cf_metadata
(Optional)

The XML format file with an .ncml extension that will supply missing or altered CF information for the input netCDF files.

File
analysis_extent
(Optional)

The Extent class determines the extent for the output raster dataset.

The form of the Extent class is as follows:

  • Extent (XMin, YMin, XMax, YMax)

    where:

    • XMin—The extent XMin value
    • YMin—The extent YMin value
    • XMax—The extent XMax value
    • YMax—The extent YMax value

Extent

Derived Output

NameExplanationData Type
out_point

The output point feature class.

Feature Class

Code sample

NetCDFPointsToFeatureClass example 1 (Python window)

This example creates a point feature class from a folder containing netCDF DSG points files from a SWOT dataset.

import arcpy
arcpy.md.NetCDFPointsToFeatureClass(r"C:\SWOT", r"C:\ArcGIS\Projects\output.gdb",
                                    "swot_water_frac", "water_frac", 
				    "INCLUDE_SUBDIRECTORIES", None, "DEFAULT")
NetCDFPointsToFeatureClass example 2 (stand-alone script)

This example creates a feature class from a set of netCDF DSG points files from MADIS with an .ncml file.

# Name: NetCDFPointsToFeatureClass_Ex_02.py
# Description: Creates a feature class from a netCDF DSG points file from MADIS with a .ncml file. 

# Import system modules
Import arcpy  

# Set the local variables 
in_files_or_folders = r"C:\MADIS" 
target_workspace = r"C:\outputs\madis.gdb" 
out_point_name = "madis_point" 
instance_variables = "temperature;pressure"  
include_subdirectories = "DO_NOT_INCLUDE_SUBDIRECTORIES"
in_cf_metadata = r"C:\MADIS\swot_cf.ncml" 
analysis_extent = ""  

# Execute NetCDFTimeSeriesToFeatureClass
arcpy.md.NetCDFPointsToFeatureClass(in_files_or_folders, target_workspace,
                                    out_point_name, instance_variables,
                                    include_subdirectories, in_cf_metadata,
                                    analysis_extent)