【ArcGIS Pro实操第10期】统计某个shp文件中不同区域内的站点数

统计某个shp文件中不同区域内的站点数

  • [方法 1:使用"空间连接 (Spatial Join)"工具](#方法 1:使用“空间连接 (Spatial Join)”工具)
  • [方法 2:使用"点计数 (Point Count)"工具](#方法 2:使用“点计数 (Point Count)”工具)
  • [方法 3:通过"选择 (Select by Location)"统计](#方法 3:通过“选择 (Select by Location)”统计)
  • [方法 4:通过"Python 脚本 (ArcPy)"实现](#方法 4:通过“Python 脚本 (ArcPy)”实现)
  • 参考

在 ArcGIS Pro 中,如果需要统计某个shp文件中不同区域内的站点数,可以通过以下步骤实现。通常,这种任务涉及两个数据集:

1、站点数据:点状数据,例如站点坐标。

2、区域数据:多边形数据,例如行政区划、分区等。

目标是计算每个区域(多边形)中包含的站点数量。

方法 1:使用"空间连接 (Spatial Join)"工具

步骤如下:

1、加载数据:

打开 ArcGIS Pro 并加载两个图层:

  • 站点图层(点数据),如站点位置的 shp 文件。
  • 区域图层(多边形数据),如行政区划的 shp 文件。

2、打开"空间连接 (Spatial Join)"工具:

在"分析"选项卡中,选择"工具 (Tools)"。

搜索并打开 "Spatial Join" 工具。

3、设置参数:

  • 目标要素(Target Features):选择 区域图层(多边形数据)。
  • 连接要素(Join Features):选择 站点图层(点数据)。
  • 连接操作(Join Operation):选择 One-To-One(默认)。
  • 匹配选项(Match Option):选择 Intersects(确保统计所有位于多边形内的点)。

4、运行工具:

运行工具后,输出的多边形图层将包含一个新字段,表示每个区域内的站点数(通常是 Join_Count 字段)。

5、结果:

打开输出图层的属性表,可以在 Join_Count 字段中查看每个区域的站点数量。

方法 2:使用"点计数 (Point Count)"工具

如果仅需要统计点的数量,可以使用专门的点计数工具。

步骤如下:

1、加载数据:

打开 ArcGIS Pro 并加载两个图层:

  • 站点图层(点数据)。
  • 区域图层(多边形数据)。

2、打开"点计数 (Summarize Within)"工具:

在"分析"选项卡中,选择"工具 (Tools)"。

搜索并打开 "Summarize Within" 工具。

3、设置参数:

  • 输入多边形(Input Polygons):选择 区域图层。
  • 输入点(Input Summary Features):选择 站点图层。
  • 输出字段:选择一个字段(如站点 ID 或其他唯一标识),用作计数依据。

示例如下:

4、运行工具:

运行工具后,输出的多边形图层将包含一个新字段,表示每个区域内的点数量。

5、结果:

打开输出图层的属性表,可以查看每个区域的点数量。

方法 3:通过"选择 (Select by Location)"统计

如果不需要生成新的图层,只是想快速统计每个区域的站点数量,可以使用"选择 (Select by Location)"功能。

步骤如下:

1、加载数据:

同样加载站点图层和区域图层。

2、打开"按位置选择 (Select by Location)"工具:

在"地图"选项卡中,选择"按位置选择 (Select by Location)"工具。

3、设置参数:

  • 输入要素(Input Features):选择 站点图层。
  • 选择要素(Selecting Features):选择 区域图层。
  • 空间关系(Spatial Relationship):选择 完全包含 (Completely Within) 或 相交 (Intersects)。

4、统计结果:

在属性表中查看被选中的点的数量。
分别对每个多边形执行上述操作,记录每个区域的站点数量。

方法 4:通过"Python 脚本 (ArcPy)"实现

使用 ArcPy 脚本可以自动化此过程,更适合批量处理。

脚本示例:

以下代码统计每个多边形内的站点数,并将结果写入区域图层的属性表。

python 复制代码
import arcpy

# 输入文件路径
point_layer = r"path_to_point_layer.shp"  # 站点图层路径
polygon_layer = r"path_to_polygon_layer.shp"  # 区域图层路径
output_layer = r"path_to_output_layer.shp"  # 输出图层路径

# 执行空间连接
arcpy.analysis.SpatialJoin(
    target_features=polygon_layer,
    join_features=point_layer,
    out_feature_class=output_layer,
    join_operation="JOIN_ONE_TO_ONE",
    match_option="INTERSECT"
)

print("空间连接完成,输出保存到:", output_layer)

运行该脚本后,output_layer 将包含一个新字段(Join_Count),表示每个区域的站点数量。

参考

相关推荐
R语言学堂12 小时前
R语言空间数据处理入门教程
arcgis·r语言·空间数据处理
xa1385086916 小时前
ArcGIS Pro调用多期历史影像
arcgis
da-peng-song2 天前
ArcGIS Desktop使用入门(二)常用工具条——数据框工具(旋转视图)
开发语言·javascript·arcgis
玩大数据的龙威2 天前
【ArcGIS技巧】根据地块、界址点图层生成界址线
arcgis
你是一个铁憨憨2 天前
使用深度学习预训练模型检测物体
人工智能·深度学习·arcgis·影像
嘘嘘出差3 天前
ArcGIS切片方案记录bundle文件
arcgis
摆烂老大4 天前
SWAT| 水文 | SWAT模型(三):土壤数据库制备
arcgis·水文·swat模型
鸿业远图科技5 天前
分式注记种表达方式arcgis
python·arcgis
城市数据匠5 天前
31【干货】Arcgis属性表常用查询表达式实战大全
arcgis·gis·cad·国土空间规划·自然资源局
新中地GIS开发老师5 天前
【Cesium入门教程】第七课:Primitive图元
arcgis·信息可视化·gis开发·webgis·地理信息系统·地理信息科学