插图
使用方法
标准距离是一种非常有用的统计数据,因为它可提供有关中心周围要素分布的单一汇总度量值(此方法类似于通过标准差测量统计平均值周围数据值的分布)。
标准距离工具可为每个案例创建包含以平均值为中心的圆面或球多面体的新要素类。绘制每个圆面或球多面体时使用的半径均等于标准距离。每个圆面或球多面体的属性值即为其标准距离值。
此工具支持点要素的 3D 特性,在提供 z 值的情况下,将在其计算中使用 x、y 和 z 值。因为这些结果本质上是 3D 要素,因此需要在场景中进行可视化。要正确可视化分析结果,请确保在场景中运行分析或将结果图层复制到场景中。
3D 结果可能会显示为蛋形,而非预期的球形。计算、距离和体积是正确的,但是失真的原因是可视化结果时存在 z 夸大。您可以调整图层属性窗口中高程选项卡上的垂直夸大。
案例分组字段参数用于在分析前对要素进行分组。当指定了案例分组字段时,会首先根据案例分组字段值对输入要素进行分组。然后计算每个组的标准距离圆。案例分组字段可以为整型、日期型或字符串型,并以属性形式显示在输出标准距离要素类中。对于案例分组字段,具有空值的记录将从分析中排除。
可以根据可选的权重字段参数计算标准距离(例如,获得按工作人员衡量的企业标准距离)。权重字段应为数值型字段。
如果要素的基础空间模式是朝向中心处集中而朝向外围的要素较少(符合瑞利分布),则一个标准差圆大小会包含聚类中约 63% 的要素,两个标准差圆大小会包含聚类中约 98% 的要素,三个标准差圆大小则可包含两个维度中约 99% 的要素。在三维空间中,对应的结果将分别是 61%、99% 和 100%。
此工具需要使用投影数据来准确测量距离。
-
对于线和面要素,距离计算中会使用要素的质心。对于多点、折线或由多部分组成的面,将会使用所有要素部分的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
警告:
在使用 shapefile 时,请注意 shapefile 无法存储空值。根据非 shapefile 输入创建 shapefile 的工具或其他过程可能会将空值存储(或解释)为零。某些情况下,空值则以极大的负值储存于 shapefile 中。这会产生意外的结果。有关详细信息,请参阅 shapefile 输出的地理处理注意事项。
语法
arcpy.stats.StandardDistance(Input_Feature_Class, Output_Standard_Distance_Feature_Class, Circle_Size, {Weight_Field}, {Case_Field})
参数 | 说明 | 数据类型 |
Input_Feature_Class | 要计算标准距离的要素分布所在的要素类。 | Feature Layer |
Output_Standard_Distance_Feature_Class | 将包含每个输入中心的圆面的面要素类。这些圆面是以图形的方式描绘到每个中心点的标准距离。 | Feature Class |
Circle_Size | 标准差中输出圆的大小。默认圆大小为 1;可供选择的选项为 1、2 或 3 标准差。
| String |
Weight_Field (可选) | 根据各位置的相对重要性对它们进行加权的数值型字段。 | Field |
Case_Field (可选) | 用于对要素进行分组以独立计算各个标准距离的字段。案例分组字段可以为整型、日期型或字符串型。 | Field |
代码示例
下面的 Python 窗口脚本演示了如何使用 StandardDistance 工具。
import arcpy
arcpy.env.workspace = r"C:\data"
arcpy.StandardDistance_stats("AutoTheft.shp", "auto_theft_SD.shp", "1_STANDARD_DEVIATION")
以下独立 Python 脚本演示了如何使用 StandardDistance 工具。
# Measure the geographic distribution of auto thefts
# Import system modules
import arcpy
# Local variables...
workspace = "C:/data"
locations = "AutoTheft.shp"
links = "AutoTheft_links.shp"
standardDistance = "auto_theft_SD.shp"
stardardEllipse = "auto_theft_SE.shp"
linearDirectMean = "auto_theft_LDM.shp"
# Set the workspace (to avoid having to type in the full path to the data every time)
arcpy.env.workspace = workspace
# Process: Standard Distance of auto theft locations...
arcpy.StandardDistance_stats(locations, standardDistance, "1_STANDARD_DEVIATION")
# Process: Directional Distribution (Standard Deviational Ellipse) of auto theft locations...
arcpy.DirectionalDistribution_stats(locations, standardEllipse, "1_STANDARD_DEVIATION")
# Process: Linear Directional Mean of auto thefts...
arcpy.DirectionalMean_stats(links, linearDirectMean, "DIRECTION")
环境
- 输出坐标系
执行分析之前,将要素几何投影到输出坐标系。所有数学计算都基于输出坐标系空间参考。
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是