我正在尝试使用Python自动执行ArcGIS Desktop(通常使用ArcMap)中的各种任务,并且一直需要一种将shapefile添加到当前地图的方法。(然后做一些事情,但这是另一个故事)。
到目前为止,我能做的最好的就是使用以下命令将图层文件添加到当前地图(“ addLayer”是图层文件对象):
def AddLayerFromLayerFile(addLayer):
import arcpy
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
arcpy.mapping.AddLayer(df, addLayer, "AUTO_ARRANGE")
arcpy.RefreshActiveView()
arcpy.RefreshTOC()
del mxd, df, addLayer
但是,我的原始数据始终是shapefile,因此我需要能够打开它们。(等效地:无需打开即可将shapefile转换为图层文件,但我不希望这样做)。