使用ArcGIS的arcpy获取要素图层的别名

版权声明:转载请注明作者(独孤尚良dugushangliang)出处: https://blog.csdn.net/dugushangliang/article/details/90695027

 

搜不到相关内容,踏破铁鞋,一度心灰意冷,打算手工一个个处理,在丞相的鼓励下,幸得柳暗花明,此注。

答案的关键先直接告诉你:

arcpy.Describe(item).aliasName

详情请看下文: 

如下图所示是一个shp文件的属性,这个窗口是在Catalog里右键点击属性所得:

这里虽然显示有别名,但这里的名称和别名不能修改。我怀疑:shp没有别名,所谓的别名就是这个shp的名称。

若不知道如何打开,请参阅下图:

下面我们开始探索。

把这个shp拖到ArcMAP窗口中,右键打开属性,这个属性是内容列表中这个图层的属性,这个图层引用shp的数据,所以这个图层的属性和shp文件的属性只是相关。

经查询,没发现有别名。

换个对象,找gdb里的要素类试试看。

这个名称还是不能改动,但别名可以修改。刚创建的要素类的别名和名称一样,本例所示的别名原来和名称一样都是aa,我把别名改成了bb,关机后再开机,打开再看还是bb,说明这个要素类的别名被成功修改了。

这里我们发现:在属性里,我们不能修改要素类或shp的名称,如果需要修改,可以如下图所示直接修改,并不能在要素类属性中修改,即名称是只读的。要素类属性中可以修改别名,shp属性的别名其实就是名称,不可修改。

我们再看看gdb的要素数据集中的要素类怎么样。

经查验,只要是在gdb里的要素类,无论是否在要素数据集中,都是一样的——可以修改别名。

既然可以修改别名,肯定也可以通过arcpy读取别名,那么怎么读取呢?

本文先在此做个声明:由于ArcGIS版本不同,可能导致有些语法操作,在这个版本可以正常运行但在那个版本就会报错。

都有哪些属性呢?看官方文档:http://desktop.arcgis.com/zh-cn/arcmap/10.3/analyze/arcpy-functions/describe.htm。其他版本也多参阅相应版本的文档。对于10.1/10.2/10.3等,大部分是相同的,但个别地方有差异,请各位注意即可。

好吧,参阅这个官方文档和代码,没找到。

再看要素类属性http://desktop.arcgis.com/zh-cn/arcmap/10.3/analyze/arcpy-functions/featureclass-properties.htm

属性说明数据类型
featureType

(只读)

要素类的要素类型。

  • 简单克里金 —面、折线和点,表示具有面积的对象或地点(如水体);线状对象(如河流)以及局部位置(如房屋或采样位点)。
  • SimpleJunction —几何网络中表示点对象的简单交汇点要素,例如,保险丝、供水点或者电话线杆。
  • SimpleEdge —几何网络中表示折线对象的简单边要素,例如,主要高架装置或次要高架装置。
  • ComplexEdge —几何网络中表示具有中跨连通性的折线对象的复杂边要素,如主要高架装置。网络资源可通过中跨连通性连续流过复杂边。
  • 注记 —地点或对象名称/标识符,例如,街道名称、消火栓 ID 号、土地价值或高程。
  • CoverageAnnotation —地点或对象名称/标识符,例如,街道名称、消火栓 ID 号、土地价值或高程。地理数据库不支持;仅受 coverage 数据集支持。
  • 维度 —测量值,例如,距离、长度、宽度和深度。
  • RasterCatalogItem —栅格目录中含有轮廓线、名称、元数据和其他用户定义属性等信息的栅格数据集。
String
hasM

(只读)

指示几何是否启用 m 值。

Boolean
hasZ

(只读)

指示几何是否启用 z 值。

Boolean
hasSpatialIndex

(只读)

指示要素类是否具有空间索引。

Boolean
shapeFieldName

(只读)

Shape 字段的名称。

String
shapeType

(只读)

几何形状类型。

  • 折线
  • 多点
  • 多面体
String

一个个都试了试,也没。

猜:alternateName、alias、aName等,都是——未果。

再看文档:GDB要素类http://desktop.arcgis.com/zh-cn/arcmap/10.3/analyze/arcpy-functions/gdb-featureclass-properties.htm

属性说明数据类型
areaFieldName

(只读)

The name of the geometry area field.

String
lengthFieldName

(只读)

The name of the geometry length field.

String
representations

(只读)

A list of Describe objects for the representations associated with the feature class.

Describe

一个个试了试,也不行,真要崩溃了。

这就像找茬,找线索,不能放过任何一个细节……

注意这个:

奇怪吧?我也奇怪,为什么是表属性里的。但经过验证,通过这个,我们可以得到别名。

10.1的也是一样的:

 

我们把gdb里的aa和dd要素类拖到map中,可以看到:

由此可得,图层默认使用要素类的别名。

真是不容易啊……路漫漫其修远兮……吾将上下而求索……

还有一个问题:如果没有设置别名,别名是不是就是名称?经验证,输出一个新建的要素类的别名,是空的,执行下面这句:

print arcpy.Describe(item).aliasName==''

结果是True,所以如果需要小心这个坑——要素类属性中看到有别名,如果别名和名称一样,很可能别名就是空字符串。

 

独孤尚良dugushangliang——著

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
### 回答1: arcgis arcpy使用手册v1.2是一本关于使用ArcGIS中的Python库arcpy的指南。它提供了详细的说明和示例代码,帮助用户学习如何使用arcpy进行地理数据处理和分析。 该手册的第一部分介绍了arcpy的基本概念和使用方法。它解释了如何在Python环境中导入arcpy库,以及如何创建工作空间、打开和保存地理数据等。除此之外,它还介绍了arcpy的一些常用功能,如数据查询、空间分析和地图制图等。 在手册的第二部分,它详细介绍了arcpy的数据管理功能。这些功能包括创建和编辑要素类、创建和管理地理数据库、导入和导出数据等。它还介绍了如何使用arcpy来处理栅格数据,如裁剪、重采样和栅格计算等。 手册的第三部分关注于空间分析和地理处理。它介绍了arcpy的一些功能,如缓冲区分析、点线面转换、数据插值和路径分析等。它还包含了示例代码,让用户可以实际应用这些功能来解决地理问题。 最后,手册的第四部分提供了一些高级功能和技巧。它介绍了如何使用arcpy进行批处理和自动化,以及如何处理多线程和内存管理等。此外,它还包含了一些实用的技巧,如错误处理和调试方法。 总的来说,arcgis arcpy使用手册v1.2是一本全面而实用的指南,它为用户提供了学习和使用arcpy的基础知识和技能。无论是初学者还是有经验的用户,都可以通过该手册快速掌握arcpy使用方法,从而更高效地处理和分析地理数据。 ### 回答2: ArcGIS arcpy使用手册v1.2 是一本关于ArcGIS arcpy模块的使用指南。ArcGIS arcpy是一个Python库,用于在ArcGIS软件中自动化地理数据处理和地理空间分析。 这本手册主要介绍如何使用arcpy模块进行地理数据处理和分析。它提供了一些常用的命令和函数的详细说明,包括数据导入、数据查询、数据编辑、地理空间分析等。手册还包括了一些示例代码,帮助用户更好地理解和掌握arcpy使用。 这本手册是根据ArcGIS arcpy v1.2版本编写的,因此对于使用这个版本的用户来说,可以直接参考手册中的内容进行操作。对于其他版本的用户,虽然手册可能不是完全适用,但基本的概念和操作仍然是相似的,因此手册中的内容仍然对他们有参考价值。 ArcGIS arcpy是一个功能强大的工具,它可以帮助用户高效地进行地理数据处理和分析。使用arcpy,用户可以自动化一些重复繁琐的任务,提高工作效率。使用手册中的说明和示例代码,用户可以快速学习和掌握arcpy使用方法,从而更好地利用这个工具进行地理数据处理和地理空间分析。 总之,ArcGIS arcpy使用手册v1.2 是一本详细介绍arcpy模块的使用方法和示例的指南,它对于使用ArcGIS软件进行地理数据处理和地理空间分析的用户来说,是一本非常有用的参考资料。无论是初学者还是有一定经验的用户,都可以从中获得帮助和指导。 ### 回答3: ArcGIS arcpy使用手册v1.2是一个提供给ArcGIS开发者的工具使用指南。该手册提供了详细的关于arcpy模块的文档和示例代码。 arcpyArcGIS的Python库,它允许用户通过Python脚本进行地理数据处理、地理空间分析和地图制作。通过使用arcpy,开发者可以自动化地执行常见的地理信息系统任务,并将其整合到自己的工作流程中。 在v1.2的手册中,用户可以找到关于arcpy模块的详细说明,包括模块的主要功能、属性和方法。手册还介绍了如何安装arcpy以及如何导入和使用它。此外,手册提供了许多实用的示例代码,帮助用户理解如何使用arcpy进行各种地理数据处理操作。 手册的内容还包括地理数据管理和分析、空间查询和选择、地图制作和输出等主题。开发者可以根据自己的需求选择手册中感兴趣的部分进行学习。 总的来说,ArcGIS arcpy使用手册v1.2是一个非常有用的资源,它提供了对arcpy模块的全面指导,帮助开发者更好地利用Python进行地理信息处理和分析的工作。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值