Manage Multidimensional Raster (Multidimensional)

Summary

Edits a multidimensional raster by adding or deleting variables or dimensions.

Usage

  • Use this tool to edit a multidimensional raster. This tool does not generate a new dataset; it modifies the multidimensional raster. To create a dataset, use the Subset Multidimensional Raster tool or the Copy Raster tool before making additional edits with this tool.

  • The target and input rasters must be in Cloud Raster Format (CRF). Currently, no other format is supported in this tool. To convert a multidimensional mosaic dataset or a multidimensional raster layer to a .crf file, use the Copy Raster tool, choose CRF as the output format, and choose to process the dataset as multidimensional.

  • The Manage Mode parameter sets the type of editing operation to be performed. The parameter supports the following options:

    • Add Dimension—Adds a dimension to the dataset. The name, description, and unit of the dimension must be provided. After the dimension is added, slices from another multidimensional dataset with the same dimension can be appended.

      Note:

      If an input CRF dataset is not a multidimensional raster, you cannot use the Manage Multidimensional Raster tool to create a multidimensional raster. Instead, use the Set Raster Properties tool to create a multidimensional raster.

    • Remove Dimension—Removes dimensions from the dataset. Each dimension to be removed can only contain a single value.
    • Append Slices—Adds slices from one or more input multidimensional rasters to the end of the stack of slices in the target multidimensional raster. The variable and dimension names in the multidimensional rasters must match exactly, and there can be no overlapping dimension values between the rasters. The appended slices must have dimension values that come after the end of the dimension values in the target multidimensional raster.
    • Replace Slices—Deletes slices from the target multidimensional raster and replaces them with slices from another multidimensional raster. The variable and dimension names in the multidimensional rasters must match exactly, and only the overlapping slices will be replaced.
    • Append Variables—Adds all the variables from one or more input multidimensional rasters to the end of the list of variables in the target multidimensional raster. If the variable name already exists in the target multidimensional raster, it will not be added. If multiple input multidimensional rasters contain a variable of the same name, the variable from the first listed input raster will be added to the target multidimensional raster.
    • Delete Variables—Deletes one or more variables, and the corresponding slices, from the target multidimensional raster. There must be at least one variable remaining in the multidimensional raster.

  • Input data must have the exact same spatial reference, spatial extent, and cell size to use the Manage Mode parameter's Append Slices, Replace Slices, and Append Variables options.

Parameters

LabelExplanationData Type
Target Multidimensional Raster

The multidimensional raster in CRF to modify.

Raster Dataset; Mosaic Dataset; Raster Layer; Mosaic Layer; Image Service; File
Manage Mode
(Optional)

Specifies the type of modification that will be performed on the target raster.

  • Add DimensionA dimension will be added to the input multidimensional raster.
  • Append SlicesSlices from the input multidimensional rasters will be added to the end of the slices for a dimension. This is the default.
  • Append VariablesThe variables from the input multidimensional rasters will be added.
  • Replace SlicesExisting slices will be replaced by slices from another multidimensional raster, at specific dimension values.
  • Delete VariablesOne or more variables will be deleted from the multidimensional raster.
  • Remove DimensionA single slice multidimensional raster will be converted to a dimensionless raster.
String
Variables
(Optional)

The variable or variables that will be modified in the target multidimensional raster. This parameter is required if the operation being performed is a modification of an existing variable.

If no variable is specified, the first variable in the target multidimensional raster will be modified.

String
Input Multidimensional Rasters
(Optional)

The multidimensional raster datasets that contain the slices or variables to be added to the target multidimensional raster. This parameter is required when the Manage Mode parameter is set to Append Slices, Replace Slices, or Append Variables.

Raster Layer; Image Service
Dimension Name
(Optional)

The name of the dimension to be added to or removed from the raster properties. This parameter is required when the Manage Mode parameter is set to Add Dimension. If the Manage Mode parameter is set to Remove Dimension, the specified dimension can only contain a single value. If the Dimension Name parameter is not specified and the input only contains a single slice, all dimensions will be removed.

String
Dimension Value
(Optional)

The value of the dimension to be added. The value can be a single value or a range of values. For a range of values, provide the minimum and maximum values separated by a comma. For example, for a new height dimension, enter 0,10 to generate a dimension in which the first slice contains information for the first 10 meters of height.

This parameter is required when the Manage Mode parameter is set to Add Dimension.

String
Dimension Description
(Optional)

The description of the new dimension to be added to the raster properties for metadata purposes. This parameter is active when the Manage Mode parameter is set to Add Dimension.

String
Dimension Unit
(Optional)

The unit of the new dimension to be added to the raster properties for metadata purposes. This parameter is active when the Manage Mode parameter is set to Add Dimension.

String
Update Statistics
(Optional)

Specifies whether the statistics will be recalculated for the multidimensional raster dataset.

  • Checked—Statistics will be recalculated. This is the default.
  • Unchecked—Statistics will not be recalculated.
Boolean
Update Transpose
(Optional)

Specifies whether the transpose will be rebuilt for the multidimensional raster dataset.

  • Checked—The transpose will be rebuilt. If no transpose exists, a new transpose will be built. This is the default.
  • Unchecked—The transpose will not be rebuilt.
Boolean

Derived Output

LabelExplanationData Type
Target Multidimensional Raster

The modified multidimensional raster.

Raster Layer

arcpy.management.ManageMultidimensionalRaster(target_multidimensional_raster, {manage_mode}, {variables}, {in_multidimensional_rasters}, {dimension_name}, {dimension_value}, {dimension_description}, {dimension_unit}, {update_statistics}, {update_transpose})
NameExplanationData Type
target_multidimensional_raster

The multidimensional raster in CRF to modify.

Raster Dataset; Mosaic Dataset; Raster Layer; Mosaic Layer; Image Service; File
manage_mode
(Optional)

Specifies the type of modification that will be performed on the target raster.

  • ADD_DIMENSIONA dimension will be added to the input multidimensional raster.
  • APPEND_SLICESSlices from the input multidimensional rasters will be added to the end of the slices for a dimension. This is the default.
  • APPEND_VARIABLESThe variables from the input multidimensional rasters will be added.
  • REPLACE_SLICESExisting slices will be replaced by slices from another multidimensional raster, at specific dimension values.
  • DELETE_VARIABLESOne or more variables will be deleted from the multidimensional raster.
  • REMOVE_DIMENSIONA single slice multidimensional raster will be converted to a dimensionless raster.
String
variables
[variables,...]
(Optional)

The variable or variables that will be modified in the target multidimensional raster. This parameter is required if the operation being performed is a modification of an existing variable.

If no variable is specified, the first variable in the target multidimensional raster will be modified.

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

The multidimensional raster datasets that contain the slices or variables to be added to the target multidimensional raster. This parameter is required when the manage_mode parameter is set to APPEND_SLICES, REPLACE_SLICES, or APPEND_VARIABLES.

Raster Layer; Image Service
dimension_name
(Optional)

The name of the dimension to be added to or removed from the raster properties. This parameter is required when the manage_mode is set to ADD_DIMENSION. If the manage_mode parameter is set to REMOVE_DIMENSION, the specified dimension can only contain a single value. If the dimension_name parameter is not specified and the input only contains a single slice, all dimensions will be removed.

String
dimension_value
(Optional)

The value of the dimension to be added. The value can be a single value or a range of values. For a range of values, provide the minimum and maximum values separated by a comma. For example, for a new height dimension, enter 0,10 to generate a dimension in which the first slice contains information for the first 10 meters of height.

This parameter is required when the manage_mode parameter is set to ADD_DIMENSION.

String
dimension_description
(Optional)

The description of the new dimension to be added to the raster properties for metadata purposes. This parameter is enabled when the manage_mode parameter is set to ADD_DIMENSION.

String
dimension_unit
(Optional)

The unit of the new dimension to be added to the raster properties for metadata purposes. This parameter is enabled when the manage_mode parameter is set to ADD_DIMENSION.

String
update_statistics
(Optional)

Specifies whether the statistics will be recalculated for the multidimensional raster dataset.

  • UPDATE_STATISTICSStatistics will be recalculated. This is the default.
  • NO_UPDATE_STATISTICSStatistics will not be recalculated.
Boolean
update_transpose
(Optional)

Specifies whether the transpose will be rebuilt for the multidimensional raster dataset.

  • UPDATE_TRANSPOSEThe transpose will be rebuilt. If no transpose exists, a new transpose will be built. This is the default.
  • NO_UPDATE_TRANSPOSEThe transpose will not be rebuilt.
Boolean

Derived Output

NameExplanationData Type
updated_target_multidimensional_raster

The modified multidimensional raster.

Raster Layer

Code sample

ManageMultidimensionalRaster example 1 (Python window)

This example appends slices to the end of a multidimensional raster and updates the statistics.

# Import system modules
import arcpy

# Append slices from two multidimensional rasters with temperature data
arcpy.md.ManageMutidimensionalRaster(
	"C:/data/temp1980_1990.crf", "APPEND_SLICES", "Temp", 
	["C:/new_data/temp1991.crf", "C:/new_data/temp1992.crf"],None,
	None,None, None, "UPDATE_STATISTICS")
ManageMultidimensionalRaster example 2 (stand-alone script)

This example replaces slices, adds a variable, and adds a dimension to the target multidimensional raster.

# Import system modules
import arcpy

# Define input parameters
target_multidimensional_raster = "C:/data/hycom.crf"
manage_mode_replace = "REPLACE_SLICES"
manage_mode_append = "APPEND_VARIABLES"
manage_mode_newDimension = "ADD_DIMENSION"
variables = "water_temp"
replace_multidimensional_rasters = "C:/new_data/new_hycom1985.crf"
salinity_multidimensional_raster = "C:/data/salinity.crf"
dimension_name = "Depth"
dimension_value = "0,5"
dimension_description = "Depth at 5m increments"
dimension_unit = "meter"

# Replace existing slices with new slices
arcpy.md.ManageMultidimensionalRaster(target_multidimensional_raster, manage_mode_replace, 
	variables, replace_multidimensional_rasters)

# Append salinity variable
arcpy.md.ManageMultidimensionalRaster(target_multidimensional_raster, manage_mode_append,
	'', salinity_multidimensional_raster)

# Add a new dimension, depth, for the water temperature variable
# Depth will be measured in 5 meter increments
arcpy.md.ManageMultidimensionalRaster(target_multidimensional_raster, manage_mode_newDimension,
	variables, None, dimension_name, dimension_value, dimension_description, dimension_unit)
ManageMultidimensionalRaster example 3 (stand-alone script)

This example removes dimensions from a single-slice multidimensional raster.

# Import system modules
import arcpy

# Define input parameters
target_multidimensional_raster = "C:/data/precip.crf"
manage_mode = "REMOVE_DIMENSION"

# Remove dimension to make input data dimensionless
arcpy.md.ManageMultidimensionalRaster(target_multidimensional_raster,
	manage_mode)