# cfdm.core.DimensionCoordinate¶

class cfdm.core.DimensionCoordinate(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]

Bases: cfdm.core.abstract.coordinate.Coordinate

A dimension coordinate construct of the CF data model.

A dimension coordinate construct provides information which locate the cells of the domain and which depend on a subset of the domain axis constructs. The dimension coordinate construct is able to unambiguously describe cell locations because a domain axis can be associated with at most one dimension coordinate construct, whose data array values must all be non-missing and strictly monotonically increasing or decreasing. They must also all be of the same numeric data type. If cell bounds are provided, then each cell must have exactly two vertices. CF-netCDF coordinate variables and numeric scalar coordinate variables correspond to dimension coordinate constructs.

The dimension coordinate construct consists of a data array of the coordinate values which spans a subset of the domain axis constructs, an optional array of cell bounds recording the extents of each cell (stored in a Bounds object), and properties to describe the coordinates. An array of cell bounds spans the same domain axes as its coordinate array, with the addition of an extra dimension whose size is that of the number of vertices of each cell. This extra dimension does not correspond to a domain axis construct since it does not relate to an independent axis of the domain. Note that, for climatological time axes, the bounds are interpreted in a special way indicated by the cell method constructs.

New in version (cfdm): 1.7.0

Initialisation

Parameters
properties: dict, optional

Set descriptive properties. The dictionary keys are property names, with corresponding values. Ignored if the source parameter is set.

Properties may also be set after initialisation with the set_properties and set_property methods.

Parameter example:

properties={'standard_name': 'longitude'}

data: data_like, optional

Set the data. Ignored if the source parameter is set.

A data_like object is any object that can be converted to a Data object, i.e. numpy array_like objects, Data objects, and cfdm.core instances that contain Data objects.

The data also may be set after initialisation with the set_data method.

bounds: Bounds, optional

Set the bounds array. Ignored if the source parameter is set.

The bounds array may also be set after initialisation with the set_bounds method.

geometry: str, optional

Set the geometry type. Ignored if the source parameter is set.

The geometry type may also be set after initialisation with the set_geometry method.

Parameter example:

geometry='polygon'

interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the source parameter is set.

The interior ring variable may also be set after initialisation with the set_interior_ring method.

source: optional

Initialise the properties, geometry type, data, bounds and interior ring from those of source.

Note that if source is a DimensionCoordinate instance then cfdm.core.DimensionCoordinate(source=source) is equivalent to source.copy().

copy: bool, optional

If True (the default) deep copy input parameters prior to initialisation. If False arguments are not deep copied.

## Inspection¶

Attributes

 construct_type Return a description of the construct type.

## Properties¶

Methods

 del_property Remove a property. get_property Return a property. has_property Whether a property has been set. set_property Set a property. properties Return all properties. clear_properties Remove all properties. set_properties Set properties.

## Data¶

Methods

 del_data Remove the data. get_data Return the data. has_data Whether or not the construct has data. set_data Set the data.

Attributes

 data Return the data.

## Bounds¶

Methods

 del_bounds Remove the bounds. get_bounds Return the bounds. has_bounds Whether or not there are bounds. set_bounds Set the bounds.

Attributes

 bounds Return the bounds.

### Geometries¶

Methods

 del_geometry Remove the geometry type. get_geometry Return the geometry type. has_geometry True if there is a geometry type. set_geometry Set the geometry type. del_interior_ring Remove the geometry type. get_interior_ring Return the interior ring variable for polygon geometries. has_interior_ring Whether or not there is an interior ring variable. set_interior_ring Set the interior_ring.

Attributes

 interior_ring Return the interior ring variable for polygon geometries.

### Climatology¶

Methods

 del_climatology Remove the climatology setting. get_climatology Return the climatology setting. is_climatology True if the coordinates are climatological. set_climatology Set whether or not coordinates are climatological.

## Miscellaneous¶

Methods

 copy Return a deep copy.

## Special¶

Methods

 __deepcopy__ Called by the copy.deepcopy function.

## Docstring substitutions¶

Methods

 _docstring_special_substitutions Return the special docstring substitutions. _docstring_substitutions Returns the substitutions that apply to methods of the class. _docstring_package_depth Returns the class {{package}} substitutions package depth. _docstring_method_exclusions Returns method names excluded in the class substitutions.