描述
识别点、线或面要素类中位于最中央的要素。
插图
使用
与数据集中所有其他要素的距离累积最小的要素是位于最中心的要素;选择此要素并复制到一个新创建的输出要素类。多个要素可以共享与所有其他要素的最小累积距离。如果出现此情况,上述所有处于最中央位置的要素都将被复制到输出要素类。
累积距离使用距离方法参数指定的 EUCLIDEAN_DISTANCE 或 MANHATTAN_DISTANCE 进行测量。
-
对于线和面要素,距离计算中会使用要素的质心。对于多点、折线或由多部分组成的面,将会使用所有要素部分的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
案例分组字段用于为独立的中心要素计算进行要素分组。案例分组字段可以是整型、日期型或字符串类型。对于案例分组字段,具有空值的记录将从分析中排除。
自身潜能是要素与其自身之间的距离或权重。通常情况下,此权重为零,但在某些情况下,您可能要为每个要素指定其他固定值或某一个不同的值(例如,可能基于面大小)。
语法
CentralFeature(Input_Feature_Class, Output_Feature_Class, Distance_Method, {Weight_Field}, {Self_Potential_Weight_Field}, {Case_Field})
参数 | 说明 | 数据类型 |
Input_Feature_Class | 包含要从中识别最中心要素的要素分布的要素类。 | Feature Layer |
Output_Feature_Class | 将包含位于“输入要素类”最中心的要素的要素类。 | Feature Class |
Distance_Method | 指定计算每个要素与邻近要素之间的距离的方式。
| String |
Weight_Field (可选) | 用于衡量起始-目的地距离矩阵中的距离的数值字段。 | Field |
Self_Potential_Weight_Field (可选) | 此字段表示自身潜力 - 要素与其自身之间的距离或权重。 | Field |
Case_Field (可选) | 用于为独立中心要素的计算而进行要素分组的字段。案例分组字段可以为整型、日期型或字符串型。 | Field |
代码示例
CentralFeature 示例 1(Python 窗口)
以下 Python 窗口脚本演示了如何使用 CentralFeature 工具。
import arcpy
arcpy.env.workspace = r"C:\data"
arcpy.CentralFeature_stats("coffee_shops.shp", "coffee_CENTRALFEATURE.shp", "EUCLIDEAN_DISTANCE", "NUM_EMP", "#", "#")
CentralFeature 示例 2(独立 Python 脚本)
以下独立 Python 脚本演示了如何使用 CentralFeature 工具。
# Measure geographic distribution characteristics of coffee house locations weighted by the number of employees
# Import system modules
import arcpy
# Local variables...
workspace = "C:/data"
input_FC = "coffee_shops.shp"
CF_output = "coffee_CENTRALFEATURE.shp"
MEAN_output = "coffee_MEANCENTER.shp"
MED_output = "coffee_MEDIANCENTER.shp"
weight_field = "NUM_EMP"
try:
# Set the workspace to avoid having to type out full path names
arcpy.env.workspace = workspace
# Process: Central Feature...
arcpy.CentralFeature_stats(input_FC, CF_output, "EUCLIDEAN_DISTANCE", weight_field, "#", "#")
# Process: Mean Center...
arcpy.MeanCenter_stats(input_FC, MEAN_output, weight_field, "#", "#")
# Process: Median Center...
arcpy.MedianCenter_stats(input_FC, MED_output, weight_field, "#", "#")
except:
# If an error occurred when running the tool, print out the error message.
print(arcpy.GetMessages())
环境
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是