描述
可用于将图层移动到数据框或地图文档 (.mxd) 的图层组内的特定位置处。
讨论
MoveLayer 将在数据框内移动图层,同时也可以在同一数据框的图层组内移动图层。moved_layer 和 reference_layer 必须位于同一数据框中。不能将图层从一个数据框移动到另一个数据框,即使在同一地图文档中也不可以。可以使用 AddLayer、InsertLayer 和 RemoveLayer 函数完成此要求。
语法
MoveLayer (data_frame, reference_layer, move_layer, {insert_position})
代码示例
MoveLayer 示例:
以下脚本可将名为 Rivers 的图层移动到名为 Lakes 的图层上方。上述两个图层均在名为 County Maps 的数据框中。
import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
df = arcpy.mapping.ListDataFrames(mxd, "County Maps")[0]
for lyr in arcpy.mapping.ListLayers(mxd, "", df):
if lyr.name.lower() == "rivers":
moveLayer = lyr
if lyr.name.lower() == "lakes":
refLayer = lyr
arcpy.mapping.MoveLayer(df, refLayer, moveLayer, "BEFORE")
mxd.saveACopy(r"C:\Project\Project2.mxd")
del mxd