邻近汇总 (分析)

摘要

查找输入图层中位于要素指定距离内的要素,并计算邻近要素的统计数据。 距离的测量方式可采用直线距离、行驶时间距离(例如,10 分钟内)或行驶距离(例如:5 公里内)。 对于行驶时间和行驶距离测量,您必须登录到具有网络分析权限的 ArcGIS Online 组织账户。 两种测量选项都会消耗配额。

以下所示为使用邻近汇总的示例情景:

  • 计算在拟建新商店位置 5 分钟车程内的总人口数。
  • 计算在建议的新商店位置的 1 英里行驶距离内的高速公路匝道数,以便测量商店的可达性。

插图

“邻近汇总”工具示意图

使用情况

    许可:

    要使用行驶时间和行驶距离测量选项,您必须登录具有网络分析权限的 ArcGIS Online 组织帐户。 每次工具成功运行,都会根据使用的服务和从服务返回的结果从您的订阅中扣除配额。 配额页面将提供有关配额的详细信息。

  • 您可以指定多个距离,并且各距离值将在各输入要素周围生成一片区域。 例如,如果您指定两个距离,则每个输入要素将被缓冲两次,并且输出将包括两个区域(每个输入要素一个区域)。

  • 邻近汇总范围内汇总在概念上是相同的。 使用邻近汇总工具,可以在点、线或面周围生成区域并在那些派生的区域内汇总要素。 使用范围内汇总工具,可以在现有面内汇总要素。

  • 您可以通过从输入点中指定分组字段来创建组。 例如,如果要汇总邻域边界距离范围内的犯罪事件,则需要具有一个含有五种犯罪类型的 Crime_type 属性。 各种唯一的犯罪类型构成一组,并将针对每个唯一 Crime_type 值计算您选择的统计数据。

  • 空值将被排除在所有统计计算之外。 例如,6、4 和空值的平均值为 5 ((6+4)/2)。

参数

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

将进行缓冲的点、线或面要素。 这些缓冲区将用于汇总输入汇总要素。

Feature Layer
输入汇总要素

将要汇总的点、线或面要素。

Feature Layer
输出要素类

输出面要素类,包括缓冲的输入要素、输入要素的属性和关于各缓冲区中数量点、线的长度及面的面积等新属性以及有关这些要素的统计数据。

Feature Class
距离测量

指定用于生成缓冲区的距离测量类型。 行驶距离和行驶时间均使用道路网络,并遵守交通规则,例如单行道。 行驶时间遵守当前发布的限速要求。

要使用行驶时间和行驶距离测量选项,您必须登录到具有网络分析权限的 ArcGIS Online 组织账户。 每次工具成功运行,都会根据使用的服务和从服务返回的结果从您的订阅中扣除配额。 配额页面将提供有关配额的详细信息。

所有距离类型均使用 ArcGIS Online 路径和网络服务(直线距离除外)。

  • 行驶距离车辆或其他类似小型汽车(例如小卡车)的行驶距离。 行驶遵循车辆专用的所有规则。
  • 行驶时间特定时间内车辆或其他类似小型汽车(例如小卡车)的行驶距离。 基于交通状况的动态行驶速度可用于指定时间的可用位置。 行驶遵循车辆专用的所有规则。
  • 直线使用欧氏或直线距离。
  • 货运距离沿指定的卡车路径行驶的距离。 行驶遵循汽车的所有规则和货运的特定规则。
  • 货运时间指定时间内沿指定卡车路径行驶的距离。 基于交通状况的动态行驶速度可用于指定时间的可用位置。 行驶遵循汽车的所有规则和货运的特定规则。
  • 步行距离沿着可允许行人通过的线路和道路行驶的距离。
  • 步行时间指定时间内沿着可允许行人通过的线路和道路所行驶的距离。
String
距离

距离值可定义搜索距离(例如直线、行驶、货运或步行距离)或行程时间(行驶、货运或步行时间)。 将汇总处于您所提供距离内(包含该距离)的要素。

可以指定多个值。 将为每个距离在每个输入要素周围生成一个区域。

Double
距离单位
(可选)

指定将用于距离值的单位。

  • 英里单位将为英里。
  • 千米单位将为千米。
  • 英尺单位将为英尺。
  • 单位将为码。
  • 单位将为米。
  • 小时单位为小时。
  • 单位为分钟。
  • 单位为秒。
String
时间
(可选)

在行程时间中,需考虑到特定日期或时间的交通状况。 交通状况,尤其是城市化地区的交通状况,可以显著影响指定行驶时间内涉及的区域。 如果未指定日期或时间,在某一特定行驶时间内行驶的距离将不受交通影响。

根据为此参数指定的日期和时间,交通状况可能是实时的,也可能是典型的(历史状况)。 Esri 会保存 12 小时的实时交通数据并参考 12 小时以后的预测数据。 如果您指定的时间和日期为 24 小时时间窗之内的时间和日期,则使用实时交通。 如果超出了时间窗范围,则使用典型或历史交通。

Date
时区
(可选)

设置用于指定时间的时区。 可以将时区指定为本地时间或协调世界时间 (UTC)。

  • Geolocal时间采用本地时区或输入要素所在的时区。 该选项会导致各时区中分析的起始时间有所变动。 这是默认设置。例如,将 geolocal 时间设置为上午 9:00 会致使东部时区内各点的行驶时间在东部时间上午 9:00 开始,同样中部时区内各点在中部时间上午 9:00 开始。 (开始时间与 UTC 时间或实际时间偏差一小时。)
  • UTC时间引用协调世界时间 (UTC)。 无论时区差异,所有点的开始时间均应同步。例如,将 UTC 时间设置为上午 9:00 会致使东部时区内各点的行驶时间在东部时间上午 4:00 开始,同样中部时区内各点在中部时间上午 3:00 开始。 (开始时间同步。)
String
保留不含点要素的面
(可选)

指定是输入要素的所有缓冲区还是仅那些相交或包括至少一个输入汇总要素的缓冲区将会复制到输出要素类。

  • 选中 - 所有缓冲区都将复制到输出要素类。 这是默认设置。
  • 未选中 - 只有相交或包括至少一个输入汇总要素的缓冲区将会复制到输出要素类。
Boolean
汇总字段
(可选)

输入汇总要素中的属性字段名称及将为各输入要素缓冲区内全部点计算属性字段的统计汇总类型的列表。

汇总字段必须为数值型。 不支持文本和其他属性字段类型。

支持的统计数据类型如下:

  • 总和 - 将计算每个缓冲区中所有点的总值。
  • 平均值 - 将计算每个缓冲区中所有点的平均值。
  • 最小值 - 将识别每个缓冲区中所有点的最小值。
  • 最大值 - 将识别每个缓冲区中所有点的最大值。
  • 标准差 - 将计算每个缓冲区中所有点的标准差。

Value Table
添加形状汇总属性
(可选)

确定是否将各输入要素缓冲区(形状汇总属性)中汇总得出的点数量、线长度及面要素面积等属性添加到输出要素类。

  • 选中 - 形状汇总属性将添加到输出要素类中。 这是默认设置。
  • 未选中 - 形状汇总属性不会添加到输出要素类中。
Boolean
形状单位
(可选)

指定在计算形状汇总属性时将使用的单位。 如果输入汇总要素为点,则不需要形状单位,因为仅添加各输入要素缓冲区内点的计数。

如果输入汇总要素为线,则指定一个线性单位。 如果输入汇总要素为面,则指定一个面积单位。

  • 单位将为米。
  • 千米单位将为千米。
  • 英尺单位将为英尺。
  • 单位将为码。
  • 英里单位将为英里。
  • 英亩将以英亩为单位。
  • 公顷单位将为公顷。
  • 平方米单位将为平方米。
  • 平方千米单位将为平方公里。
  • 平方英尺将以平方英尺为单位。
  • 平方码将以平方码为单位。
  • 平方英里将以平方英里为单位。
String
组字段
(可选)

用于分组的输入汇总要素中的属性字段。 具有相同组字段值的要素将合并与具有相同组字段值的其他要素汇总。

如果指定一个组字段,则需要创建一个附加输出分组表格并必须指定其位置。 当使用组字段时,将需要输出分组表参数。

Field
添加少数和众数属性
(可选)

指定是否将每个输入要素缓冲区中的少数(所占比例最小)和众数(所占比例最大)组字段值添加到输出中。 如果指定了组字段参数值,则此参数将处于活动状态。

  • 未选中 - 不会向输出添加少数和众数字段。 这是默认设置。
  • 选中 - 将向输出添加少数和众数字段。
Boolean
添加组百分比
(可选)

指定是否向输出添加百分比属性字段。 使用此参数,您可以确定各组内各个属性值的百分比。

如果指定了组字段参数值,则此参数将处于活动状态。

  • 未选中 - 不会向输出添加百分比属性字段。 这是默认设置。
  • 选中 - 将向输出添加百分比属性字段。
Boolean
输出分组表
(可选)

各个输入要素缓冲区各汇总要素组的汇总字段的输出表。 如果指定了组字段,则需要输出分组表。

该表将具有以下属性字段:

  • Join_ID - 与添加到输出要素类的 ID 字段对应的 ID。
  • 组字段
  • 点计数或线长度等形状汇总字段
  • 每个汇总字段对应一个字段
  • 百分比字段

Table

arcpy.analysis.SummarizeNearby(in_features, in_sum_features, out_feature_class, distance_type, distances, {distance_units}, {time_of_day}, {time_zone}, {keep_all_polygons}, {sum_fields}, {sum_shape}, {shape_unit}, {group_field}, {add_min_maj}, {add_group_percent}, {Output_Grouped_Table})
名称说明数据类型
in_features

将进行缓冲的点、线或面要素。 这些缓冲区将用于汇总输入汇总要素。

Feature Layer
in_sum_features

将要汇总的点、线或面要素。

Feature Layer
out_feature_class

输出面要素类,包括缓冲的输入要素、输入要素的属性和关于各缓冲区中数量点、线的长度及面的面积等新属性以及有关这些要素的统计数据。

Feature Class
distance_type

指定用于生成缓冲区的距离测量类型。 行驶距离和行驶时间均使用道路网络,并遵守交通规则,例如单行道。 行驶时间遵守当前发布的限速要求。

要使用行驶时间和行驶距离测量选项,您必须登录到具有网络分析权限的 ArcGIS Online 组织账户。 每次工具成功运行,都会根据使用的服务和从服务返回的结果从您的订阅中扣除配额。 配额页面将提供有关配额的详细信息。

所有距离类型均使用 ArcGIS Online 路径和网络服务(直线距离除外)。

  • DRIVING_DISTANCE车辆或其他类似小型汽车(例如小卡车)的行驶距离。 行驶遵循车辆专用的所有规则。
  • DRIVING_TIME特定时间内车辆或其他类似小型汽车(例如小卡车)的行驶距离。 基于交通状况的动态行驶速度可用于指定时间的可用位置。 行驶遵循车辆专用的所有规则。
  • STRAIGHT_LINE使用欧氏或直线距离。
  • TRUCKING_DISTANCE沿指定的卡车路径行驶的距离。 行驶遵循汽车的所有规则和货运的特定规则。
  • TRUCKING_TIME指定时间内沿指定卡车路径行驶的距离。 基于交通状况的动态行驶速度可用于指定时间的可用位置。 行驶遵循汽车的所有规则和货运的特定规则。
  • WALKING_DISTANCE沿着可允许行人通过的线路和道路行驶的距离。
  • WALKING_TIME指定时间内沿着可允许行人通过的线路和道路所行驶的距离。
String
distances
[distance,...]

距离值可定义搜索距离(例如直线、行驶、货运或步行距离)或行程时间(行驶、货运或步行时间)。 将汇总处于您所提供距离内(包含该距离)的要素。

可以指定多个值。 将为每个距离在每个输入要素周围生成一个区域。

Double
distance_units
(可选)

指定将用于距离值的单位。

  • MILES单位将为英里。
  • KILOMETERS单位将为千米。
  • FEET单位将为英尺。
  • YARDS单位将为码。
  • METERS单位将为米。
  • HOURS单位为小时。
  • MINUTES单位为分钟。
  • SECONDS单位为秒。
String
time_of_day
(可选)

在行程时间中,需考虑到特定日期或时间的交通状况。 交通状况,尤其是城市化地区的交通状况,可以显著影响指定行驶时间内涉及的区域。 如果未指定日期或时间,在某一特定行驶时间内行驶的距离将不受交通影响。

根据为此参数指定的日期和时间,交通状况可能是实时的,也可能是典型的(历史状况)。 Esri 会保存 12 小时的实时交通数据并参考 12 小时以后的预测数据。 如果您指定的时间和日期为 24 小时时间窗之内的时间和日期,则使用实时交通。 如果超出了时间窗范围,则使用典型或历史交通。

Date
time_zone
(可选)

设置用于指定时间的时区。 可以将时区指定为本地时间或协调世界时间 (UTC)。

  • GEOLOCAL时间采用本地时区或输入要素所在的时区。 该选项会导致各时区中分析的起始时间有所变动。 这是默认设置。例如,将 geolocal 时间设置为上午 9:00 会致使东部时区内各点的行驶时间在东部时间上午 9:00 开始,同样中部时区内各点在中部时间上午 9:00 开始。 (开始时间与 UTC 时间或实际时间偏差一小时。)
  • UTC时间引用协调世界时间 (UTC)。 无论时区差异,所有点的开始时间均应同步。例如,将 UTC 时间设置为上午 9:00 会致使东部时区内各点的行驶时间在东部时间上午 4:00 开始,同样中部时区内各点在中部时间上午 3:00 开始。 (开始时间同步。)
String
keep_all_polygons
(可选)

指定是输入要素的所有缓冲区还是仅那些相交或包括至少一个输入汇总要素的缓冲区将会复制到输出要素类。

  • KEEP_ALL所有缓冲区都将复制到输出要素类。 这是默认设置。
  • ONLY_INTERSECTING只有相交或包括至少一个输入汇总要素的缓冲区将会复制到输出要素类。
Boolean
sum_fields
[[summary_field, statistic_type],...]
(可选)

输入汇总要素中的属性字段名称及将为各输入要素缓冲区内全部点计算属性字段的统计汇总类型的列表。

汇总字段必须为数值型。 不支持文本和其他属性字段类型。

支持的统计数据类型如下:

  • 总和 - 将计算每个缓冲区中所有点的总值。
  • 平均值 - 将计算每个缓冲区中所有点的平均值。
  • 最小值 - 将识别每个缓冲区中所有点的最小值。
  • 最大值 - 将识别每个缓冲区中所有点的最大值。
  • 标准差 - 将计算每个缓冲区中所有点的标准差。

Value Table
sum_shape
(可选)

确定是否将各输入要素缓冲区(形状汇总属性)中汇总得出的点数量、线长度及面要素面积等属性添加到输出要素类。

  • ADD_SHAPE_SUM形状汇总属性将添加到输出要素类中。 这是默认设置。
  • NO_SHAPE_SUM形状汇总属性不会添加到输出要素类中。
Boolean
shape_unit
(可选)

指定在计算形状汇总属性时将使用的单位。 如果输入汇总要素为点,则不需要形状单位,因为仅添加各输入要素缓冲区内点的计数。

如果输入汇总要素为线,则指定一个线性单位。 如果输入汇总要素为面,则指定一个面积单位。

  • METERS单位将为米。
  • KILOMETERS单位将为千米。
  • FEET单位将为英尺。
  • YARDS单位将为码。
  • MILES单位将为英里。
  • ACRES将以英亩为单位。
  • HECTARES单位将为公顷。
  • SQUAREMETERS单位将为平方米。
  • SQUAREKILOMETERS单位将为平方公里。
  • SQUAREFEET将以平方英尺为单位。
  • SQUAREYARDS将以平方码为单位。
  • SQUAREMILES将以平方英里为单位。
String
group_field
(可选)

用于分组的输入汇总要素中的属性字段。 具有相同组字段值的要素将合并与具有相同组字段值的其他要素汇总。

如果指定一个组字段,则需要创建一个附加输出分组表格并且必须在 out_grouped_table 参数中指定其位置。

Field
add_min_maj
(可选)

指定是否将每个输入要素缓冲区中的少数(所占比例最小)和众数(所占比例最大)组字段值添加到输出中。 如果指定了 group_field 参数值,则将启用此参数。

  • NO_MIN_MAJ不会向输出添加少数和众数字段。 这是默认设置。
  • ADD_MIN_MAJ将向输出添加少数和众数字段。
Boolean
add_group_percent
(可选)

指定是否将每个组中每个属性值的百分比添加至输出。 使用此参数,您可以确定各组内各个属性值的百分比。

如果指定了 group_field 参数值,则将启用此参数。

  • NO_PERCENT不会向输出添加百分比属性字段。 这是默认设置。
  • ADD_PERCENT将向输出添加百分比属性字段。
Boolean
Output_Grouped_Table
(可选)

各个输入要素缓冲区各汇总要素组的汇总字段的输出表。 如果指定了组字段,则需要输出分组表。

该表将具有以下属性字段:

  • Join_ID - 与添加到输出要素类的 ID 字段对应的 ID。
  • 组字段
  • 点计数或线长度等形状汇总字段
  • 每个汇总字段对应一个字段
  • 百分比字段

Table

代码示例

SummarizeNearby 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何使用 SummarizeNearby 函数。

import arcpy
arcpy.env.workspace = "C:/data/city.gdb"
arcpy.analysis.SummarizeNearby("new_store_location", "census_blocks", 
                               "new_store_population", "STRAIGHT_LINE", "1;2", 
                               "Miles", "", "", "KEEP_ALL", "Pop2014 SUM")
SummarizeNearby 示例 2(独立脚本)

下面的独立脚本演示了如何在脚本环境中使用 SummarizeNearby 函数。

# Description: Use SummarizeNearby to summarize population

# import system modules 
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data/city.gdb"

# Set local variables
newStore = "new_store_location"
censusInfo = "census_blocks"
outFeatureClass = "crimes_aggregated"
distanceType = "TRAVEL_TIME"
distance = "10;20"
distanceUnit = "Minutes"
time = "10/15/2014 2:14:19 PM"
timeZone = "GEOLOCAL"
keepPolys = True
sumFields = [["Pop2010", "Sum"],["OWNERS", "Sum"]]
addShapeSum = True

arcpy.analysis.SummarizeNearby(newStore, censusInfo, outFeatureClass, 
                               distanceType, distance, distanceUnit,
                               time, timeZone, keepPolys, sumFields,
                               addShapeSum)

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题