Skip to main content

图层属性

汇总

Describe 函数可返回图层的以下属性。 同时还支持 数据集 属性组及图层所引用的数据类型的属性。 例如,引用要素类的图层可以访问 要素类 属性组,而引用栅格数据集的图层可以访问 栅格数据集 属性组。

  • 如果所描述的数据元素是地图中的图层或内存中的图层,则返回的 dataType 提供所描述的图层的数据源的信息。 这方面的一些示例是 "MosaicLayer""FeatureLayer""GroupLayer"

  • 您可以检查由 layer 属性返回的 Describe 对象,以获得有关 .lyrx.lyr 文件所包含图层的信息。

属性

属性 说明 数据类型

dataElement

(只读)

图层所指的数据源的 Describe 对象。

Describe

endTimeField

(只读)

图层的结束时间字段(如果图层为时间感知型)。

String

featureClass

(只读)

与要素图层相关的要素类的 Describe 对象。

Describe

FIDSet

(只读)

arcpy.Describe 将返回用分号分隔的所选要素 ID 字符串(记录编号)。

arcpy.da.Describe 将返回所选要素 ID 的列表。 如果尚未对图层应用选择,则 FIDSet 将返回 None ;如果已对图层应用选择,但没有返回任何记录,则 FIDSet 将返回一个空列表。

Integer

fieldInfo

(只读)

图层的 FieldInfo 对象(属性集)。

FieldInfo

layer

(只读)

.lyr 文件内图层的 Describe 对象。

Describe

nameString

(只读)

图层的名称。

String

startTimeField

(只读)

图层的开始时间字段(如果图层为时间感知型)。

String

table

(只读)

图层内表的 Describe 对象。

Describe

TimeZone

(只读)

开始和结束时间字段参考的时区(如果为图层指定了时间)。

String

whereClause

(只读)

图层的定义查询 where 子句。

String

代码示例

图层属性示例 1

以下独立脚本显示了一些内存要素图层中的图层属性:

import arcpy

# Create an in memory feature layer from a feature class.
arcpy.management.MakeFeatureLayer(
        "C:/data/chesapeake.gdb/bayshed",
        "mainlines_layer")

# Create a Describe object from the feature layer.
desc = arcpy.Describe("mainlines_layer")

# Print some properties of the feature layer, and its featureclass.
print("Name String:        " + desc.nameString)
print("Where Clause:       " + desc.whereClause)
print("Feature class type: " + desc.featureClass.featureType)

图层属性示例 2

以下独立脚本显示了一些 .lyr 文件中的图层属性:

import arcpy

# Create a Describe object from a .lyr file.
desc = arcpy.Describe("c:/data/water_pipes.lyr")

# Print some properties of the feature layer
print("Name String:        " + desc.nameString)
print("Where Clause:       " + desc.whereClause)

# Find out if the layer represents a feature class
if desc.dataElement.dataType == "FeatureClass":
    print("Feature class:      " + desc.dataElement.catalogPath)
    print("Feature class Type: " + desc.featureClass.featureType)
else:
    print("Not a regular feature class")