【问题标题】:Python Script in GIS ProjectGIS 项目中的 Python 脚本
【发布时间】:2016-09-29 14:35:36
【问题描述】:

我是 GIS 编程课程的学生。我的教授在注册之前没有告诉我 Python 经验会有用。我没有使用 Python 的经验,在这个项目上需要帮助。任何示例或清晰的解释都会很棒。这是项目:

复制位于 \cartggp\Geo573&673_Lab\Lab5_Part2 的 FirDepartment.gdb 文件地理数据库 到您的计算机。写一个python单机脚本 计算 44 个中每一个中的所有单户住宅和多户住宅 火灾响应区:(100 分)

1) 每个火灾响应区在数据库中都有一个对应的要素类 名称结构“FireBoxMap_id”。还有一个建筑足迹要素类, BldgFoorprints,带有一个名为 UseCode 的使用代码字段(1=single-family, 2=多家庭)

2) 首先,您需要使用 ListFeatureClasses 创建一个列表对象,其中包含 所有“FireBoxMap_id”要素类。然后使用一个for循环结构来遍历 每个区域。

3) 在每个区域要素类的for循环结构中,需要编写代码 添加两个新字段以计算单户和多户 建筑物。 (检查 AddField 地理处理工具的使用)

4) 然后选择区域内的所有独栋建筑,得到计数, 将计数分配给单户计数的两个新字段之一;进而 选择区域内的所有多户住宅,获取计数,分配 将计数转移到另一个新字段以进行多户计数。 (检查使用 CalculateField 地理处理工具)

5) 您可能需要的工具: where_clause 的 AddFieldDelimiters MakeFeatureLayer(将 where_clause 设置为仅检索单个家庭或 多户住宅。 SelectLayerByLocation(使用“HAVE_THEIR_CENTER_IN”选项) 获取计数

到目前为止,这是我在第 2 步中的内容:

import arcpy
import os
arcpy.env.workspace = "D:\Fehr10\Fehr_Python\Datapdf\FireDepartment.gdb"
featureclasses = arcpy.ListFeatureClasses()

这并不多。我基于 GIS 帮助数据库中的一个示例。

【问题讨论】:

  • 您在这里提出了几个不同的问题。您应该考虑将其拆分为多个问题,例如“如何使用 arcpy 获取要素数量?”、“如何使用 arcpy 计算字段?”和“如何使用 arcpy 选择特征?”一旦你这样做了,你就会意识到你的问题要简单得多,而且这些问题在 arcpy 文档和 gis.stackexchange.com 上都有简单的答案。

标签: python gis arcgis


【解决方案1】:

首先安装ArcGIS桌面(需要试用许可); 获取试用许可证的链接如下: arcgis trial license

其次,点击ArcGIS桌面的帮助,浏览arcPy的帮助文档。 如下图所示: python的其他帮助文档也是必要的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多