当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python ArcGIS interpolate_points用法及代码示例


本文简要介绍 python 语言中 arcgis.features.analysis.interpolate_points 的用法。

用法:

arcgis.features.analysis.interpolate_points(input_layer, field, interpolate_option='5', output_prediction_error=False, classification_type='GeometricInterval', num_classes=10, class_breaks=[], bounding_polygon_layer=None, predict_at_point_layer=None, output_name=None, context=None, gis=None, estimate=False, future=False)

返回:

result_layer : FeatureLayer 如果指定了 output_name,否则 Python 字典具有以下键:

“result_layer”:层( FeatureCollection )

“prediction_error”:层( FeatureCollection )

“predicted_point_layer”:层( FeatureCollection )

如果 future = True ,则结果是 Future 对象。调用result() 获取响应。

interpolate_points.png

interpolate_points 方法允许您根据一组点的测量值来预测新位置的值。该方法获取具有每个点的值的点数据,并返回按预测值分类的区域。例如:

  • 空气质量管理区设有测量污染水平的传感器。 interpolate_points 可用于预测没有传感器的位置的污染水平,例如有高危人群、学校或医院的位置。

  • 根据从单个植物采集的样本预测裁剪中的重金属浓度。

  • 预测土壤养分水平(氮、磷、钾等)和其他指标(如电导率),以研究它们与裁剪产量的关系,并为田间每个位置规定精确的肥料用量。

  • 气象应用包括预测温度、降雨和相关变量(如酸雨)。

interpolate_points 使用Empirical Bayesian Kriging 地理处理工具执行插值。提供给经验贝叶斯克里金法工具的参数由 interpolate_option 请求参数控制。

如果为 interpolate_option 提供值 1,则经验贝叶斯克里金法将使用以下参数:

  • transformation_type - 无

  • semivariogram_model_type - 电源

  • max_local_points - 50

  • overlap_factor - 1

  • number_semivariograms - 30

  • nbrMin - 8

  • nbrMax - 8

如果为 interpolate_option 提供值 5,则经验贝叶斯克里金法将使用以下参数:

  • transformation_type - 无

  • semivariogram_model_type - 电源

  • max_local_points 75

  • overlap_factor - 1.5

  • number_semivariograms - 100

  • nbrMin - 10

  • nbrMax - 10

如果为 interpolate_option 提供值 9,则经验贝叶斯克里金法将使用以下参数:

  • transformation_type - 经验

  • semivariogram_model_type - K_BESSEL

  • max_local_points - 200

  • overlap_factor - 3

  • number_semivariograms - 200

  • nbrMin - 15

  • nbrMax - 15

Parameter

Description

input_layer

所需层。将对其特征进行插值的点图层。请参阅特征输入。

field

必需的字符串。包含您要插值的值的数值字段的名称。

interpolate_option

可选整数。整数值,表示您对速度与准确性的偏好,从 1(最快)到 9(最准确)。更准确的预测需要更长的时间来计算。

选择列表:[1,5,9]。

默认值为 5。

output_prediction_error

可选布尔值。如果为 True,则插值预测的标准误差多边形层将在 prediction_error 输出参数中返回。

标准误差很有用,因为它们提供了有关预测值可靠性的信息。一个简单的经验法则是,95% 的情况下,真实值将落在预测值的两个标准误差范围内。例如,假设一个新位置的预测值为 50,标准误差为 5。这意味着此任务的最佳猜测是该位置的真实值为 50,但合理地可以低至 40 或高如 60。要计算此合理值范围,请将标准误差乘以 2,将该值与预测值相加以获得范围的上限,并从预测值中减去它以获得范围的下限。

classification_type

可选字符串。确定如何将预测值分类为区域。

  • EqualArea - 创建多边形以使每个区域中的数据值数量相等。

例如,如果数据的大值多于小值,则将为大值创建更多区域。

  • EqualInterval - 创建多边形,使每个区域的预测值范围相等。

  • GeometricInterval - 多边形基于具有几何级数的类间隔。此方法确保每个类范围在每个类内具有大致相同数量的值,并且间隔之间的变化是一致的。

  • Manual - 您可以定义自己的区域值范围。这些值将输入到下面的class_breaks 参数中。

选择列表:[‘EqualArea’、‘EqualInterval’、‘GeometricInterval’、‘Manual’]

默认值为“GeometricInterval”。

num_classes

可选整数。该值用于将插值范围划分为不同的类别。每个类中的值范围由classification_type 参数确定。每个类定义结果多边形的边界。

默认值为 10。最大值为 32。

class_breaks

可选的浮点数列表。如果classification_type 是手动,请提供所需的类中断值,并用空格分隔。这些值定义每个类别的上限,因此类别数量将等于输入值的数量。不会为预测值高于输入的最大中断值的任何位置创建区域。您必须输入至少两个值且不超过 32 个。

bounding_polygon_layer

可选层。指定要在其中插入值的多边形的图层。例如,如果您要对湖泊内鱼类的密度进行插值,则可以在此参数中使用湖泊的边界,并且输出将仅包含湖泊边界内的面。请参阅特征输入。

predict_at_point_layer

可选层。指定点位置以计算预测值的可选层。这使您可以在感兴趣的特定位置进行预测。例如,如果 input_layer 表示污染水平的测量值,您可以使用此参数来预测高危人群所在位置(例如学校或医院)的污染水平。然后,您可以使用此信息向这些地点的卫生官员提供建议。

如果提供,输出 predicted_point_layer 将包含指定位置的预测。请参阅特征输入。

output_name

可选字符串或 FeatureLayer 。现有要素图层将导致新图层附加到要素服务。如果 overwrite 在上下文中为 True,则新层将覆盖现有层。如果未指示output_name,则创建新的 FeatureCollection

context

可选字典。处理范围和输出空间参考等附加设置。对于interpolate_points,有三个设置。

  • extent - 定义分析区域的边界框。仅分析input_layer 中与边界框相交的那些特征。

  • outSR - 输出要素将投影到 wkid 引用的输出空间参考中。

  • overwrite - 如果为 True,则 output_name 中的要素层将被新要素层覆盖。适用于 ArcGIS Online 或 Enterprise 10.9.1+

# Example Usage

>>> context = {"extent": {"xmin": 3164569.408035,
                          "ymin": -9187921.892449,
                          "xmax": 3174104.927313,
                          "ymax": -9175500.875353,
                          "spatialReference":{"wkid":102100,
                                              "latestWkid":3857}},
               "outSR": {"wkid": 3857},
               "overwrite": True}

gis

可选,运行此工具的 GIS 。如果未指定,则使用活动 GIS。

estimate

可选的布尔值。如果为 True,将返回运行该操作的积分数。

future

可选,如果为 True,将返回未来对象,并且进程不会等待任务完成。默认为False,表示等待结果。

例子:

#USAGE EXAMPLE: To predict mine production in US at new locations.

>>> interpolated = interpolate_points(coal_mines_us,
                                      field='Total_Prod',
                                      interpolate_option=5,
                                      output_prediction_error=True,
                                      classification_type='GeometricInterval',
                                      num_classes=10,
                                      output_name='interpolate coal mines production')

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 arcgis.features.analysis.interpolate_points。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。