需要 Geostatistical Analyst 许可。
描述
基于包含概率生成一组采样点,进而获得空间平衡的采样设计。此工具通常用于通过对采样位置提出建议来设计监控网络,以及使用包含概率栅格定义特定位置的优先级。
使用方法
输入概率栅格只能包含 0 到 1 之间的值。值越大,采样设计中包含该像元的可能性就越大。
研究区域内所有值的包含概率都应 >= 0,而研究区域以外的所有区域的概率都应为空值。
包含概率栅格的像元大小将决定生成样本时的最佳分辨率。换句话说,此工具创建的点总是位于栅格像元的中心。如果包含概率栅格使用较小的像元大小,将产生更多可采用的点位置。
将点、线或面要素转换为栅格以获得输入概率栅格时,应考虑以下因素:
- 栅格像元大小(分辨率)应该精细到能够区分出总体中所有重要要素的程度。为此,可将像元大小设置为小于要素间最小距离的一半。该距离可使用生成近邻表工具进行计算。
- 对于线要素和面要素,设置像元大小时应确保生成的栅格能充分呈现要素(例如,蜿蜒的河流)。例如,无法使用较大的栅格像元大小来表示复杂的河流;因为如果像元大小过大,河流中的转弯会过于平滑。
- 此外,还应考虑在实地定位采样位置时所使用的精度。如果使用 GPS 查找位置时定位精度为 10 米,则像元大小也应该为 10 米。
- 请注意包含概率栅格的大小,因为随着像元数量的增加,处理时间会变长。
为避免输出中出现空间不平衡的点,建议将采样位置的数量控制在包含概率栅格中像元数的 1% 以下。
此工具在操作中使用随机数生成器。可在随机数生成器环境中控制所使用的“种子”值。
- 如果使用的种子值为 0(默认值),则每次运行该工具时都将使用一组不同的随机数,并生成不同的输出。
- 如果将随机数种子值设置为大于 0 的固定值,则每次运行工具时都将生成一组相同的采样位置,直到更改种子值为止。在生成候选采样网络时,将随机数种子值设置为大于 0 的固定值有助于选出最能满足需求的采样位置。
语法
arcpy.ga.CreateSpatiallyBalancedPoints(in_probability_raster, number_output_points, out_feature_class)
参数 | 说明 | 数据类型 |
in_probability_raster | 此栅格定义感兴趣区域内每个位置的包含概率。位置的值范围为 0(低包含概率)到 1(高包含概率)。 | Raster Layer; Mosaic Layer |
number_output_points | 指定要生成的采样位置的数量。 | Long |
out_feature_class | 输出要素类包含所选采样位置及其包含概率。 | Feature Class |
代码示例
CreateSpatiallyBalancedPoints 示例 1(Python 窗口)
基于输入包含概率栅格创建一组空间平衡点。
import arcpy
arcpy.env.workspace = "C:/gapyexamples/data"
arcpy.CreateSpatiallyBalancedPoints_ga("ca_prob", "10", "C:/gapyexamples/output/csbp")
CreateSpatiallyBalancedPoints 示例 2(独立脚本)
基于输入包含概率栅格创建一组空间平衡点。
# Name: CreateSpatiallyBalancedPoints_Example_02.py
# Description: This tool generates a set of sample points based on inclusion
# probabilities. The resulting sample design is spatially balanced, meaning
# that the spatial independence between samples is maximized, making the
# design more efficient than sampling the study area at random.
# Requirements: Geostatistical Analyst Extension
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/gapyexamples/data"
# Set local variables
inProb = "ca_prob"
numberPoints = 10
outPoints = "C:/gapyexamples/output/csbp"
# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")
# Execute CreateSpatiallyBalancedPoints
arcpy.CreateSpatiallyBalancedPoints_ga(inProb, numberPoints, outPoints)
环境
许可信息
- Basic: 需要 Geostatistical Analyst
- Standard: 需要 Geostatistical Analyst
- Advanced: 需要 Geostatistical Analyst