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


Python ArcGIS calculate_density用法及代码示例


本文简要介绍 python 语言中 arcgis.raster.analytics.calculate_density 的用法。

用法:

arcgis.raster.analytics.calculate_density(input_point_or_line_features, count_field=None, search_distance=None, output_area_units=None, output_cell_size=None, output_name=None, context=None, input_barriers=None, *, gis=None, future=False, **kwargs)

返回:

ra_calculate_density.png

密度分析采用已知数量的某种现象,并通过将这些数量分布在Map上来创建密度图。例如,您可以使用此函数来显示雷击或龙卷风的集中度、医疗保健设施的使用情况和人口密度。

此函数通过在Map上传播已知数量的某些现象(表示为点或线的属性)从点或线特征创建密度图。结果是一层从最不密集到最密集的区域。

对于点输入,每个点应表示某个事件或事件的位置,结果层表示每单位面积的事件计数。新位置中较大的密度值意味着该位置附近有更多点。在许多情况下,结果层可以解释为未来事件的风险面。例如,如果输入点表示雷击的位置,则结果图层可以解释为未来雷击的风险面。

对于线输入,线密度表面表示每个位置附近的线的总量。计算密度值的单位是line-per-unit区域的长度。例如,如果线条代表河流,则结果图层将代表搜索半径内河流的总长度。该结果可用于确定适合放牧动物的区域。

此工具的其他用例包括:

  • 创建犯罪密度图,以帮助警察部门将资源正确分配到犯罪率高的地区。

  • 计算县内医院的密度。结果层将显示医院可达性高和低的区域,这些信息可用于决定应该在哪里建造新医院。

  • 根据森林火灾的历史位置识别森林火灾高风险区域。

  • 定位远离主要高速公路的社区,以便规划应该在哪里建造新道路。

Parameter

Description

input_point_or_line_features

所需要素图层 - 将用于计算密度图层的输入点或线图层。

count_field

可选字符串 - 计数字段

提供一个字段,指定每个位置的事件数量。例如,如果您有代表城市的点,则可以使用代表城市人口的字段作为计数字段,生成的人口密度图层将计算人口较多的城市附近较大的人口密度。

如果使用默认选项“无”,则假定每个位置代表一个计数。

例子:

“myCountField”

search_distance

可选字典,输入距离,指定在计算密度值时搜索点或线要素的距离。

例如,如果您提供 10,000 米的搜索距离,则输出图层中任何位置的密度都是根据该位置 10,000 米范围内的要素计算的。在 10,000 米范围内没有任何事件的任何位置都将收到零密度值。如果未提供距离,则将根据输入要素的位置和计数字段中的值计算默认值(如果提供了计数字段)。

例子:

{“distance”:”60”,”units”:”Meters”}

output_area_units

可选字符串 - 输出面积单位 指定输出面积单位。密度是计数除以面积,此参数指定密度计算中的面积单位。可用的面积单位是SQUARE_MILES 和SQUARE_KILOMETERS。

例子:

“SQUARE_KILOMETERS”

output_cell_size

可选 dict - 输出像元大小 输入输出栅格的像元大小和单位。

例子:

{distance”:”60”,”units”:”Meters”}

output_name

可选的。如果未提供,则由该方法创建影像服务并将其用作输出栅格。您可以从 GIS 中传入现有的影像服务项目来使用它。或者,您可以传入应通过此方法创建的输出图像服务的名称,以用作工具的输出。如果该名称的服务已经存在,则会引发 RuntimeError

context

context 包含影响任务执行的其他设置。

context 参数覆盖通过arcgis.env 参数设置的值

此函数具有以下设置:

  • Extent(范围):定义分析区域的边界框。

    例子:

    {“extent”: {“xmin”: -122.68, “ymin”: 45.53, “xmax”: -122.45, “ymax”: 45.6, “spatialReference”: {“wkid”: 4326}}}

  • 输出空间参考 (outSR):输出栅格将投影到输出空间参考中。

    例子:

    {“outSR”: {spatial reference}}

  • 捕捉栅格 (snapRaster):输出栅格的像元将与指定的捕捉栅格对齐。

    例子:

    {‘snapRaster’: {‘url’: ‘<image_service_url>’}}

  • 掩码(mask):在操作中只考虑落在分析掩码内的单元格。

    例子:

    {“mask”: {“url”: “<image_service_url>”}}

  • 像元大小(cellSize):输出栅格将具有由像元大小指定的分辨率。

    例子:

    {‘cellSize’: 11} or {‘cellSize’: {‘url’: <image_service_url>}} or {‘cellSize’: ‘MaxOfIn’}

  • 重采样方法(resamplingMethod):输出栅格将被重采样到指定的方法。支持的值是:双线性、最近、三次。

    例子:

    {‘resamplingMethod’: “Nearest”}

input_barriers

可选的。定义障碍的数据集。障碍可以是折线或面要素的要素图层。

ArcGIS Image Server 10.9 及更高版本中可用的参数。

gis

可选的 GIS 对象。如果未指定,则使用当前活动的连接。

future

仅关键字参数。可选的布尔值。如果为 True,则结果将是一个 GPJob 对象,并且结果将异步返回。

folder

仅关键字参数。可选的 str 或 dict。使用给定的文件夹名称在门户中创建一个文件夹(如果不存在),并将输出保留在此文件夹中。 create_folder() 返回的字典也可以作为输入传入。

例子:

{‘username’: ‘user1’,
‘id’: ‘6a3b77c187514ef7873ba73338cf1af8’,
‘title’: ‘trial’}

tiles_only

仅关键字参数。可选的布尔值。在ArcGIS Online 中,此函数的默认输出影像服务将是平铺影像图层。

要在 ArcGIS Online 上创建动态影像图层作为输出,请将 tiles_only 参数设置为 False。

函数将不支持ArcGIS Enterprise 上的tiles_only 参数,默认情况下会生成动态影像图层。

output_raster:影像图层项目

例子:

# Usage Example 1: Creates a density map within a specified distance from said location.

sample_lyr = gis.content.search("sample_lyr", item_type="Feature Layer Collection")[0].layers[0]

calculate_density_op = calculate_density(input_point_or_line_features=sample_lyr,
                                        search_distance={"distance":"10","units":"Meters"},
                                        gis=gis)

# To view output inline, run:
calculate_density_op.layers[0]

相关用法


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