计算密度 (栅格分析)

摘要

通过在地图范围内扩展某一现象(表示为点或线的属性)的已知量,根据点要素或线要素创建密度图。 结果是按密度从小到大分类的面图层。

在计算密度时,可以使用障碍来改变要素的影响。

插图

计算密度工具图示

使用情况

  • 当您登录到已针对 Raster Analysis 配置 ArcGIS Image ServerArcGIS Enterprise 门户时,可以使用栅格分析门户工具。 调用该工具后,ArcGIS Pro 将充当客户端,处理将在与 ArcGIS Enterprise 联合的服务器中进行。 门户工具接受来自门户的图层作为输入,并在门户中创建输出。

    输入要素图层可以是来自门户、URI 或要素服务 URL 的图层。 虽然可以使用本地要素数据和图层作为此门户工具的输入,但是最佳做法是使用门户的图层作为输入。

  • 半径参数值越大,生成的密度栅格越平滑。 值越小,生成的栅格更改越明显。 如果未提供值,则工具将基于点数及其坐标计算出一个值。

  • 计算密度时,仅考虑落入邻域范围内的点或线段。 如果没有点或线段位于特定像元的邻域范围内,则该像元的密度将为零。

参数

标注说明数据类型
输入点或线要素

将用于计算密度栅格的输入点或线要素。

Feature Set
输出名称

输出栅格服务的名称。

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

String
计数字段
(可选)

此字段用于指示每个位置处的事件点数量。 例如,如果正在创建人口密度栅格且输入点为城市,则为计数字段使用城市人口最为合适,以便人口较多的城市对密度计算产生更大的影响。

Field
搜索距离
(可选)

搜索距离和距离单位。 计算像元的密度时,该距离内的所有要素都将用于该像元的密度计算。

单位可以是千米、米、英里或英尺。

默认单位是米。

Linear Unit
输出面积单位
(可选)

指定将用于计算面积的单位。 密度等于计数除以面积,此参数用于设置密度计算中的面积单位。

  • 平方米计算每平方米的密度。 这是默认设置。
  • 平方千米计算每平方千米的密度。
  • 平方英尺计算每平方英尺的密度。
  • 平方英里计算每平方英里的密度。
String
输出像元大小
(可选)

输出栅格的像元大小和单位。

单位可以是千米、米、英里或英尺。

默认单位是米。

Linear Unit
输入障碍要素
(可选)

定义障碍的数据集。

障碍可以是折线或面要素的要素图层。

Feature Set

派生输出

标注说明数据类型
输出栅格

输出栅格。

Raster Layer

arcpy.ra.CalculateDensity(inputPointOrLineFeatures, outputName, {countField}, {searchDistance}, {outputAreaUnits}, {outputCellSize}, {inBarriers})
名称说明数据类型
inputPointOrLineFeatures

将用于计算密度栅格的输入点或线要素。

Feature Set
outputName

输出栅格服务的名称。

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

String
countField
(可选)

此字段用于指示每个位置处的事件点数量。 例如,如果正在创建人口密度栅格且输入点为城市,则为计数字段使用城市人口最为合适,以便人口较多的城市对密度计算产生更大的影响。

Field
searchDistance
(可选)

搜索距离和距离单位。 计算像元的密度时,该距离内的所有要素都将用于该像元的密度计算。

单位可以是千米、米、英里或英尺。

默认单位是米。

Linear Unit
outputAreaUnits
(可选)

指定将用于计算面积的单位。 密度等于计数除以面积,此参数用于设置密度计算中的面积单位。

  • Square Meters计算每平方米的密度。 这是默认设置。
  • Square Kilometers计算每平方千米的密度。
  • Square Feet计算每平方英尺的密度。
  • Square Miles计算每平方英里的密度。
String
outputCellSize
(可选)

输出栅格的像元大小和单位。

单位可以是千米、米、英里或英尺。

默认单位是米。

Linear Unit
inBarriers
(可选)

定义障碍的数据集。

障碍可以是折线或面要素的要素图层。

Feature Set

派生输出

名称说明数据类型
outputRaster

输出栅格。

Raster Layer

代码示例

CalculateDensity 示例 1(Python 窗口)

本示例根据具有人口字段的点来创建密度影像服务栅格。

import arcpy

arcpy.ra.CalculateDensity('https://MyPortal.esri.com/server/rest/services/Hosted/myPoints/FeatureServer/0',
                          'outImgServ', 'Population','150000 Meters', 'Square Kilometers','10000 Meters', 
                          'https://MyPortal.esri.com/server/rest/services/Hosted/myPoints/FeatureServer/1')
CalculateDensity 示例 2(独立脚本)

本示例根据具有人口字段的点来创建密度影像服务栅格。

#-------------------------------------------------------------------------------
# Name: CalculateDensity_example02.py
# Description: Creates a density image service raster from points with a population.
#
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inPoints = 'https://MyPortal.esri.com/server/rest/services/Hosted/myPoints/FeatureServer/0'
outRaster = 'outImgServ'
inField = 'Population'
searchDistance = '150000 Meters'
areaUnit = 'Square Kilometers'
outCellSize = '10000 Meters'
inBarriers = 'https://MyPortal.esri.com/server/rest/services/Hosted/myPoints/FeatureServer/1'

# Execute CalculateDensity
arcpy.ra.CalculateDensity(inPoints, outRaster, inField, searchDistance, areaUnit, outCellSize, inBarriers)

许可信息

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

相关主题