方向分布(标准差椭圆) (空间统计)
插图
用法
-
标准差椭圆工具可为每个案例(案例分组字段参数)都创建一个包含椭圆面的新输出要素类。这些椭圆面的属性值包括平均中心的 X 和 Y 坐标、两个标准距离(长轴和短轴)以及椭圆的方向。字段名分别为 CenterX、CenterY、XStdDist、YStdDist 和 Rotation。如果提供了案例分组字段,同时也会将此字段添加到输出要素类。
-
基于欧氏距离或者曼哈顿距离的计算需要投影数据来准确测量距离。
-
如果要素的基础空间模式集中于中心且朝向外围的要素较少(一种空间正态分布),则一个标准差椭圆面约包含聚类中 68% 的要素,两个标准差约包含聚类中 95% 的要素,三个标准差约包含聚类中 99% 的要素。
-
“旋转”输出字段中的值表示从顶点开始按顺时针方向对长轴测量的旋转度。
-
案例分组字段用于在进行分析前将要素分组。如果指定了案例分组字段,会首先根据案例分组字段值对输入要素进行分组,然后再计算每组的标准差椭圆。案例分组字段可以是整型、日期或字符串类型。
可以根据可选的权重字段进行标准差椭圆计算(例如,获取按严重程度衡量的交通事故的椭圆)。“权重字段”应为数字。
-
对于线和面要素,会在距离计算中使用要素质心。对于多点、折线 (polyline) 或由多部分组成的面,使用所有要素部分的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
在使用 shapefile 时,请注意 shapefile 无法存储空值。根据非 shapefile 输入创建 shapefile 的工具或其他过程可能会将空值存储(或解析)为零。这会产生意外的结果。另请参阅 shapefile 输出的地理处理注意事项。
语法
参数 | 说明 | 数据类型 |
Input_Feature_Class |
要计算标准差椭圆的要素分布所在的要素类。 | Feature Layer |
Output_Ellipse_Feature_Class |
包含输出椭圆要素的面要素类。 | Feature Class |
Ellipse_Size |
输出椭圆的大小(按标准差数量计)。默认椭圆大小为 1;有效选项为 1、2 或 3 个标准差。
| String |
Weight_Field (可选) |
根据各位置的相对重要性对它们进行加权的数字字段。 | Field |
Case_Field (可选) |
对要素进行分组以分开计算方向分布的字段。案例分组字段可以是整型、日期或字符串类型。 | Field |
代码示例
下面的 Python 窗口脚本演示了如何使用 DirectionalDistribution 工具。
import arcpy arcpy.env.workspace = r"C:\data" arcpy.DirectionalDistribution_stats("AutoTheft.shp", "auto_theft_SE.shp", "1_STANDARD_DEVIATION", "#", "#")
下面的独立 Python 脚本演示了如何使用 DirectionalDistribution 工具。
# 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" try: # 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", "#") except: # If an error occurred while running a tool, print the messages print arcpy.GetMessages()
环境
- 输出坐标系
进行分析之前,将要素几何投影到“输出坐标系”。所有数学计算都基于“输出坐标系”空间参考进行。