Arc GIS 10.1 - Cách sắp xếp các lớp tăng dần tại TOC trong Danh sách bằng cách vẽ thứ tự


8

Tôi có khoảng 100 tính năng trong Dự án ArcMap của mình. Tôi chọn tại TOC chế độ Xem "Liệt kê theo thứ tự vẽ". Làm thế nào tôi có thể sắp xếp danh sách này tăng dần hoặc theo tên chữ cái? Trong trường tùy chọn, không có gì như thế này. Thứ tự vẽ nên tăng dần theo tên. Hoặc làm thế nào tôi có thể sắp xếp chúng theo cách khác?

Câu trả lời:


4

Tôi đã viết một tập lệnh bằng MoveLayer và Lớp nhóm tạm thời để làm việc này. Trước tiên, tạo một lớp nhóm mới ở bất cứ đâu trong TOC của bạn (không quan trọng nó được gọi là gì, nó sẽ bị xóa ở cuối). Điều này chỉ hoạt động dựa trên giả định rằng lớp nhóm tạm thời này là lớp duy nhất trong mxd. Tất nhiên, điều này có thể được bỏ qua bằng cách đặt tên lớp tạm thời của bạn (chẳng hạn như "Tempgroup") và thay đổi tập lệnh để sử dụng lớp nhóm đó đặc biệt cho việc sắp xếp.

mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd)[0] # Assuming one data frame
group_lyr = [lyr for lyr in arcpy.mapping.ListLayers(mxd) if lyr.isGroupLayer][0] # The temp group layer should be the only one
lyr_names = sorted(lyr.name for lyr in arcpy.mapping.ListLayers(mxd) if lyr.isFeatureLayer)

for name in lyr_names:
    arcpy.mapping.MoveLayer(df, group_lyr, arcpy.mapping.ListLayers(mxd, name)[0], "BEFORE")

arcpy.mapping.RemoveLayer(df, group_lyr)

Gist là ở đây . Tôi đang sử dụng ArcGIS 10.3.1 cho Máy tính để bàn.


thêm các dòng đó vào cuối mã Cindy Williams:mxd.save() del mxd
newGIS

Thay đổi nêu trên chỉ được yêu cầu nếu tập lệnh được gọi theo chương trình trên mxd hiện có. Câu trả lời được viết với giả định rằng nó sẽ được chạy trong cửa sổ Python trong ArcMap.
Cindy Jayakumar

cảm ơn Cidny, nhưng ii chạy trong tệp python bên ngoài.
newGIS

2

Không có cách nào để sắp xếp Danh sách theo Bản vẽ TOC (không lập trình).

Nhưng có thể sắp xếp Danh sách theo TOC Hiển thịDanh sách theo lựa chọn TOC: Chuyển đến nút tùy chọn trên TOC. Trên tab Tùy chọn đã chọn sắp xếp các lớp theo thứ tự chúng được vẽ hoặc theo thứ tự bảng chữ cái theo tên lớp ( Sắp xếp các lớp theo ).


Cảm ơn. Nhưng tôi biết những cách sắp xếp khác. Esri giúp mô tả những cách đó. Nhưng không phải trường hợp của tôi những gì tôi cần. Làm thế nào tôi có thể lập trình nó? Tôi đã tìm thấy một cái gì đó với PLTS nhưng không tìm thấy gì theo cách đó. Cảm ơn một lần nữa cho bất kỳ lời khuyên.
Luis

0

Có, bạn có thể làm điều đó

Sắp xếp mục lục theo thứ tự bảng chữ cái, vui lòng tìm chi tiết trong: http://resource.arcgis.com/en/help/main/10.1/index.html#//0106000001qt000000


1
Điều này có vẻ như chỉ có thể khi bạn có tiện ích mở rộng này chứ không phải ArcMap đơn giản.
Devdatta Tengshe
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.