计算密度 (栅格分析)

描述

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

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

插图

计算密度工具图示

使用方法

  • 此栅格分析门户工具将在您登录到 ArcGIS Enterprise “了解 ArcGIS Enterprise 门户中的分析”链接 时可用,其中门户包含一个 ArcGIS Image Server “什么是 ArcGIS Image Server”链接,此链接专为 Raster Analysis “配置和部署栅格分析”链接 配置。调用该工具后,ArcGIS Pro 将充当客户端,处理将在与 ArcGIS Enterprise 联合的服务器中进行。门户工具接受来自门户的图层作为输入,并在门户中创建输出。

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

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

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

语法

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

输出栅格。

栅格图层

代码示例

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

相关主题