分割 (3D Analyst)

需要 Spatial Analyst 许可。

需要 3D Analyst 许可。

摘要

按照相等间隔区域,或者相等面积或自然间断点分级法分割或重分类输入像元值的范围。

使用情况

  • 分割最适用于正态分布的数据。使用倾斜的输入栅格数据时,输出结果可能不包含所有预期或指定的类。

  • 使用等积方法时,有时并非所有输出区域(类)都具有相等甚至相近的像元数。这可能是根据输入值和指定的区域数的性质得出的固有结果。如果认为结果不理想,可以先通过较少区域进行尝试或将统计变换(例如,对数或平方根)应用于输入数据集。

参数

标注说明数据类型
输入栅格

要进行重分类的输入栅格。

Raster Layer
输出栅格

输出重分类栅格。

输出将始终为整型。

Raster Dataset
输出区域数量

将输入栅格重分类的区域数量。

分割方法为等积时,输出栅格需要定义区域数量,并且每个区域中的像元数应相同。

使用相等间隔时,输出栅格需要定义区域数量,每个区域在输出栅格中生成的值范围应相同。

使用自然间断点时,输出栅格需要定义区域数量,每个区域中的像元数将由分类间隔决定。

Long
分割方法
(可选)

输入栅格中值的分割方式。

  • 相等间隔确定输入值的范围然后将该范围分割为指定数量的输出区域。分割后输出栅格中每个区域的输入像元值都可能与极值范围相同。这是默认设置。
  • 相等面积指定输入值将被划分为指定数量的输出区域,且每个区域的像元数相同。每个区域所代表的面积大小相等。
  • 自然间断点指定各类将基于数据中固有的自然分组。中断点将通过选择分类间隔识别,这些分类间隔可对相似值进行最恰当地分组并使各类之间的差异最大化。像元值将被划分到各个类,如果数据值中出现相对较大的跳跃性,可为这些类设置界限。
String
用于输出的起始区块
(可选)

定义输出栅格数据集中最低区域的值。

默认值为 1。

Long

arcpy.ddd.Slice(in_raster, out_raster, number_zones, {slice_type}, {base_output_zone})
名称说明数据类型
in_raster

要进行重分类的输入栅格。

Raster Layer
out_raster

输出重分类栅格。

输出将始终为整型。

Raster Dataset
number_zones

将输入栅格重分类的区域数量。

分割方法为等积时,输出栅格需要定义区域数量,并且每个区域中的像元数应相同。

使用相等间隔时,输出栅格需要定义区域数量,每个区域在输出栅格中生成的值范围应相同。

使用自然间断点时,输出栅格需要定义区域数量,每个区域中的像元数将由分类间隔决定。

Long
slice_type
(可选)

输入栅格中值的分割方式。

  • EQUAL_INTERVAL确定输入值的范围然后将该范围分割为指定数量的输出区域。分割后输出栅格中每个区域的输入像元值都可能与极值范围相同。这是默认设置。
  • EQUAL_AREA指定输入值将被划分为指定数量的输出区域,且每个区域的像元数相同。每个区域所代表的面积大小相等。
  • NATURAL_BREAKS指定各类将基于数据中固有的自然分组。中断点将通过选择分类间隔识别,这些分类间隔可对相似值进行最恰当地分组并使各类之间的差异最大化。像元值将被划分到各个类,如果数据值中出现相对较大的跳跃性,可为这些类设置界限。
String
base_output_zone
(可选)

定义输出栅格数据集中最低区域的值。

默认值为 1。

Long

代码示例

Slice 示例 1(Python 窗口)

根据数据内固有的自然分组将输入栅格重分类为五类。

import arcpy
from arcpy import env  
env.workspace = "C:/data"
arcpy.Slice_3d("elevation", "c:/output/elevslice", 5, "NATURAL_BREAKS")
Slice 示例 2(独立脚本)

根据数据内固有的自然分组将输入栅格重分类为十类。

# Name: Slice_3d_Ex_02.py
# Description: Slices a range of values of the input cells of a raster by
#    zones of equal interval or equal area.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inRaster = "elevation"
outRaster = "C:/output/outslice"
numberZones = 10
baseOutputZone = 5

# Execute Slice
arcpy.Slice_3d(inRaster, outRaster, numberZones, "NATURAL_BREAKS", 
               baseOutputZone)

许可信息

  • Basic: 需要 3D Analyst 或 Spatial Analyst
  • Standard: 需要 3D Analyst 或 Spatial Analyst
  • Advanced: 需要 3D Analyst 或 Spatial Analyst

相关主题