流量 (栅格分析)

描述

创建每个像元累积流量的栅格。

插图

“流量”工具图示

使用方法

  • 此栅格分析门户工具将在您登录到 ArcGIS Enterprise “了解 ArcGIS Enterprise 门户中的分析”链接 时可用,其中门户包含一个 ArcGIS Image Server “什么是 ArcGIS Image Server”链接,此链接专为 Raster Analysis “配置和部署栅格分析”链接 配置。调用该工具后,ArcGIS Pro 将充当客户端,处理将在与 ArcGIS Enterprise 联合的服务器中进行。门户工具接受来自门户的图层作为输入,并在门户中创建输出。

    输入栅格图层支持来自门户的图层、图像服务的 URI 或 URL 或创建影像服务器图层工具的输出。此工具不支持本地栅格数据或图层。

  • 通过流量得到的结果是表示每个像元累积流量的栅格,由流入每个下坡像元的所有像元的累积权重决定。

  • 在计算累积流量时,流量工具支持三种流向建模算法。这些算法为 D8、多流向 (MFD) 和 D-Infinity (DINF) 流量法。

  • 如果未使用流向工具创建输入流向栅格,则定义的流可能呈环形。如果流向形成环,流量将陷入永无止境的无限循环中。

    可使用 D8、多流向 (MFD) 或 D-Infinity (DINF) 方法创建输入流向。输入流向栅格的类型会影响流量工具划分与累积每个像元的流量的方法。可以使用输入流向类型来指定创建流向栅格时所使用的方法。

  • 具有未定义流向的像元将仅接收流;它们不会形成任何下游流。

    对于输入 D8 流向栅格,如果像元在流向栅格中的值为 1、2、4、8、16、32、64 或 128 以外的值,则认为该像元具有未定义的流向。

    对于输入 D-Infinity 流向栅格,如果像元在流向栅格中的值为 -1,则认为该像元具有未定义的流向。

  • 累积流量基于流入输出栅格中每个像元的总像元数或部分像元数。累积中不会考虑当前处理的像元。

  • 高流量的输出像元是集中流动区域,可用于标识河道。

  • 流量为零的输出像元是局部地形高点,可用于识别山脊。

语法

arcpy.ra.FlowAccumulation(inputFlowDirectionRaster, outputName, {inputWeightRaster}, {dataType}, {flowDirectionType})
参数说明数据类型
inputFlowDirectionRaster

根据每个像元来显示流向的输入栅格。

可使用 D8、MFD 或 DINF 方法创建流向栅格。可以使用 flowDirectionType 参数来指定创建流向栅格时所使用的方法。

Raster Layer; Image Service; String
outputName

输出流量栅格服务的名称。

默认名称基于工具名称以及输入图层名称。如果该图层名称已存在,则系统将提示您提供其他名称。

String
inputWeightRaster
(可选)

对每一像元应用权重的可选整型输入栅格。

Raster Layer; Image Service; String
dataType
(可选)

输出累积栅格可以是整型、浮点型或双精度型。

  • FLOAT输出栅格将为浮点型。这是默认设置。
  • INTEGER输出栅格将为整型。
  • DOUBLE输出栅格将为双精度型。
String
flowDirectionType
(可选)

指定输入流向栅格类型。

  • D8输入流向栅格为 D8 类型。这是默认设置。
  • MFD输入流向栅格为多流向 (MFD) 类型。
  • DINF输入流向栅格为 D-Infinity (DINF) 类型。
String

派生输出

名称说明数据类型
outputRaster

输出栅格。

栅格图层

代码示例

FlowAccumulation 示例 1(Python 窗口)

本示例将创建输入流向栅格的每个像元累积流量的栅格。

import arcpy
arcpy.FlowAccumulation_ra("https://myserver/rest/services/flowdir/ImageServer","outFlowAccumulation1")
FlowAccumulation 示例 2(独立脚本)

本示例将创建输入流向栅格的每个像元累积流量的栅格。

#---------------------------------------------------------------------------
# Name: FlowAccumulation_example02.py
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inFlowDirection = "https://myserver/rest/services/flowdir/ImageServer"
outputFlowAccumulation = "outFlowAccumulation2"
inWeight = ""
dataType = "DOUBLE"

# Execute Flow Accumulation raster analysis tool
arcpy.FlowAccumulation_ra(inFlowDirection, outputFlowAccumulation, inWeight, dataType)

许可信息

  • Basic: 需要 ArcGIS Image Server
  • Standard: 需要 ArcGIS Image Server
  • Advanced: 需要 ArcGIS Image Server

相关主题