『公告』 预祝您龙年大吉,万事如意, 过节期间, 大家如需数据服务,请拨打400 或直接添加客服微信,再祝大家龙年,心想事成。
关注我们 新浪 腾讯

ArcGIS教程:河网分级

ArcGIS教程:河网分级
如果输入河流栅格数据和输入流向栅格数据是从同一表面获取,则河网分级的输出质量将更高。如果河流栅格数据是从栅格化的河流数据集获取,则输出可能不可用,因为各像元的流向与河流像元的位置不对应。

摘要

    为表示线状网络分支的栅格线段指定数值顺序。

用法

·      如果输入河流栅格数据和输入流向栅格数据是从同一表面获取,则河网分级的输出质量将更高。如果河流栅格数据是从栅格化的河流数据集获取,则输出可能不可用,因为各像元的流向与河流像元的位置不对应。

·      通过应用阈值选择高累积流量的像元,可使用流量工具的结果来创建栅格河流网络。例如,像元流入超过 100 的像元用来定义河流网络。使用条件函数设为空函数 工具创建河流网络栅格,其中大于或等于 100 的流量值合并为一个值,剩余的流量值则放入背景 (NoData)。生成的河流网络可以用在河流连接栅格河网矢量化中。

确定河流网络描绘的相应阈值的分析方法在 Tarboton (1991) 中进行了介绍。

语法

StreamOrder (in_stream_raster, in_flow_direction_raster, {order_method})

参数

说明

数据类型

in_stream_raster

表示线性河流网络的输入栅格。

NoData 的背景上,输入河流栅格数据线状网络应表示为大于或等于一的值。

Raster Layer

in_flow_direction_raster

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

可以使用流向 工具创建流向栅格。

Raster Layer

order_method

(可选)

用于指定河网分级的方法。

·         STRAHLER — 此河网分级方法由 Strahler 1952 年提出。仅当级别相同的河流交汇时,河网等级才会升高。因此,一级连接线与二级连接线相交会保留二级连接线,而不会创建三级连接线。这是默认设置。

·         SHREVE — 此按量级的河网分级方法由 Shreve 1967 年提出。所有没有支流的连接线的量级(分级)将被指定为一。量级是指可相加的河流下坡坡度。当两个连接线相交时,将它们的量级相加,然后将其指定为下坡连接线。

String

返回值

名称

说明

数据类型

out_raster

输出河网分级栅格数据。

将为整型。

Raster

代码实例

    StreamOrder 示例 1Python 窗口)

    本例为表示线状网络分支的栅格线段指定数值顺序。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

outStreamOrder = StreamOrder("stream", "flowdir", "STRAHLER")

outStreamOrder.save("c:/sapyexamples/output/outstrmordr01")

    StreamOrder 示例 2(独立脚本)

    本例为表示线状网络分支的栅格线段指定数值顺序。

# Name: StreamOrder_Ex_02.py

# Description: Assigns a numeric order to segments of a raster

#              representing branches of a linear network.

# Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inStreamRast = "stream"

inFlowDirectionRaster = "flowdir"

orderMethod = "STRAHLER"

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute StreamOrder

outStreamOrder = StreamOrder(inStreamRast, inFlowDirectionRaster, orderMethod)

# Save the output

outStreamOrder.save("c:/sapyexamples/output/outstrmordr02")

      京ICP备2025132830号-1 京公网安备 号