Chỉ hiển thị các mục huyền thoại thực sự được hiển thị trên bản đồ trong ArcGIS Desktop?


14

Sử dụng ArcGIS Desktop, có cách nào để huyền thoại, chỉ hiển thị các phần phụ được hiển thị trên bản đồ không?


Bạn đã thử chuyển đổi huyền thoại thành đồ họa? Sau khi chuyển đổi thành đồ họa, bạn có thể xóa thủ công các mục trong chú giải mà bạn không cần. Tôi hy vọng điều đó sẽ giúp. Cảm ơn.
Raj

1
@Raj - Ồ không, tôi không có kế hoạch làm việc duy trì bản đồ sẽ là nỗi đau
dassouki

1
Câu hỏi liên kết là một câu hỏi khác đã được trả lời. Vì vậy, hỏi một câu hỏi mới mô tả chi tiết vấn đề của bạn.
MathiasWestin

1
Câu hỏi cũ được gắn thẻ arcgis 9.3, vì vậy bạn sẽ ổn khi hỏi một câu hỏi mới và gắn thẻ cho ArcGIS 10. Ngoài ra, câu hỏi được liên kết là một câu trả lời và bạn đang hỏi một câu hỏi khắc phục sự cố cho bộ giới hạn huyền thoại.
Jay Cummins

Ngoài ra, các câu hỏi khắc phục sự cố có thể mất một chút thời gian để có lực kéo và bạn nên cố gắng giữ cho bộ câu hỏi được sắp xếp với thông tin mới để dễ theo dõi. Hoặc người dùng khác sẽ xem nó và chuyển sang câu hỏi tiếp theo.
Jay Cummins

Câu trả lời:


9

Huyền thoại giới hạn

Legend Limiter chỉ hoạt động trên các lớp sử dụng "danh mục giá trị duy nhất" để xác định hệ thống ký hiệu. Kiểu truyền thuyết này có thể được thiết lập trong tab Symbology của hộp thoại Layer Properties. Legend Limiter sẽ không giới hạn ký hiệu của các lớp được thiết lập với ký hiệu ký hiệu đơn.

http://arcscripts.esri.com/details.asp?dbid=16097


Đó là thứ gần nhất với những gì tôi cần, Về bản chất, tôi phải chuyển đổi tất cả hệ thống ký hiệu của mình thành giá trị duy nhất
dassouki

@ Mapperz - có bản sửa lỗi cho ArcGIS 10 tại đây: forum.arcgis.com/threads/24968-Legend-Limiter-in-Arc-10
Dano

@ Mapperz (hoặc bất cứ ai) - Tôi đã tải xuống các tệp cần thiết cho Legend Limiter tại liên kết tôi đã đăng ở trên. Khi cố gắng cài đặt, tôi nhận được một thông báo lỗi, tôi đã googled. Tôi có ấn tượng rằng không có bản vá nào tồn tại để bổ trợ này tương thích với cả ArcGIS 10 và Windows 7. Trên chuỗi này, tôi có nên bắt đầu một câu hỏi mới liên quan đến chủ đề này không? Hoặc .... có ai biết về một bản vá đáp ứng cả hai tham số (Arc 10 & Windows 7) /
Dano

3
Chạy trong chế độ khả năng tương thích của Windows trên Windows 7.
Mapperz

@ Mapperz - bạn có thể đăng câu trả lời này để tôi có thể chọn nó làm câu trả lời. Câu hỏi của tôi về vấn đề này là ở đây: gis.stackexchange.com/questions/12609/ Khăn
Dano

11

Không cần phải viết bất kỳ ArcPy bổ sung nào cho việc này. Chỉ cần sử dụng các huyền thoại động (đã được thêm vào tại ArcGIS 10.1) khi bạn là tác giả của bản đồ.

Tùy chọn mở rộng bản đồ cho phép bạn kiểm soát cách các mục chú thích đủ điều kiện tương tác với phạm vi bản đồ hiện tại. Nếu hộp kiểm Chỉ hiển thị các lớp hiển thị trong hộp kiểm phạm vi bản đồ hiện tại được chọn, một lớp mục chú thích sẽ chỉ xuất hiện trong chú giải nếu một tính năng từ lớp đó ở trong phạm vi hiện tại. Nếu không có tính năng nào từ mục huyền thoại đó trong phạm vi hiện tại, toàn bộ mục sẽ bị xóa khỏi chú giải.


4

Trong chế độ xem bản đồ, nhấp chuột phải vào Chú giải để mở cửa sổ Thuộc tính, sau đó nhấp vào tab "Mục". Trong "Tùy chọn mở rộng bản đồ", chọn "Chỉ hiển thị các lớp hiển thị trong phạm vi bản đồ hiện tại".

Nó sẽ làm mới khi bạn di chuyển xung quanh bản đồ hoặc bật / tắt các lớp trong lớp.



Cảm ơn bạn đã cụ thể về nơi hộp kiểm được ẩn!
JMers

1

tôi nghĩ rằng mã này sẽ giúp:

import arcpy
import arcpy.mapping
import os
import sys
from arcpy import env
import string


env.workspace = r"C:\Project"
for mxdname in arcpy.ListFiles("*.mxd"):
    print mxdname
    mxd = arcpy.mapping.MapDocument(r"C:\Project\\" + mxdname)
    legend = arcpy.mapping.ListLayoutElements(mxd,"LEGEND_ELEMENT")[0]
    for lyr in legend.listLegendItemLayers():
        legend.updateItem(lyr, use_visible_extent = True)
        print 'updateItem'    
    mxd.save()
del mxd
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.