Có cách nào đơn giản để sắp xếp các lớp theo thứ tự abc trong QGIS không?


12

Tôi đang làm việc trong một dự án GIS lớn và việc không thể sắp xếp các mục trong bảng điều khiển Lớp đang khiến tôi gặp khó khăn. Tôi có thể có tới 250 lớp trong bảng điều khiển Lớp.

Tôi có một sơ đồ đặt tên đặc biệt cho tất cả các tệp raster TIFF mà tôi nhập và tham chiếu địa lý trong QGIS. Nhưng khi tôi nhập chúng, tôi không thể nhập từng cái một theo thứ tự bảng chữ cái, bởi vì đồng nghiệp của tôi đang làm việc trên một số tệp và tôi đang làm việc trên các tệp khác. Vì vậy, các mục trong bảng điều khiển Lớp ở khắp mọi nơi. Chương trình không đủ thông minh để sắp xếp chúng theo thứ tự bảng chữ cái. Thay vào đó, chúng sắp xếp chúng theo thứ tự tôi nhập chúng.

Ở đây, hãy nhìn vào ảnh chụp màn hình này.

một

Có tùy chọn tích hợp nào trong QGIS cho phép tôi sắp xếp các mục này không? Nếu không, có một plugin tôi có thể cài đặt cho phép tôi làm điều này không?

Chỉnh sửa: Tôi tìm thấy điều này và một vài dòng mã đầu tiên dường như thực hiện thủ thuật.

from PyQt4.QtCore import *
from PyQt4.QtGui import *
from qgis.utils import iface

mw = iface.mainWindow()
lgd = mw.findChild(QTreeWidget, "theMapLegend")  # get ref to object by type/objectName
lgd.sortItems(0, Qt.AscendingOrder)  # sort first column (Qt.DescendingOrder to reverse)

Nhưng tôi không phải là người thông thạo C ++ hay lập trình viên Python. Nghiêm túc chứ? ... Tôi có phải chọn một cuốn sách nấu ăn lập trình để sắp xếp các lớp trong QGIS không? Nó có thể khó khăn hơn nữa không? ...

b

Không có plugin nào có thể làm công việc tương tự? Tôi sợ sử dụng mã mà tôi không hiểu về một dự án quan trọng.


1
Để đánh giá những gì tôi đã đọc trên trang web của QGIS, đây đã là một tính năng được yêu cầu trong một vài năm nay. Tất cả các "giải pháp" tôi đã tìm thấy cho đến nay liên quan đến việc sử dụng các khối mã để hoàn thành công việc. Tôi đã cài đặt QGIS 2.2.0 được phát hành vào tháng trước và nó không có tùy chọn như vậy để sắp xếp các lớp. Vì đây không phải là ưu tiên, sẽ rất tuyệt nếu ai đó có thể viết plugin để thêm tính năng này vào QGIS.
Samir

1
Nếu dự án là quan trọng, hãy sao lưu và thử mã. Bạn có muốn tin tưởng một plugin mà bạn không hiểu? Tôi không nghĩ điều đó có ý nghĩa.
underdark

@underdark Đối với một người không có kỹ năng lập trình thì đây có thể là một trở ngại. "Tìm và trả tiền cho ai đó viết một plugin cho điều đó" sẽ là một câu trả lời tốt hơn. Tôi nghĩ rằng chúng ta nên thiết lập một loại nền tảng thị trường dành cho nhà phát triển QGIS cho các vấn đề như vậy. Hay chúng ta đã có?
AndreJ

@AndreJoost hiện chỉ có danh sách các nhà cung cấp hỗ trợ / nhà phát triển thương mại trên qgis.org. Nơi tốt nhất để liên lạc là trong danh sách gửi thư của nhà phát triển.
underdark

Có lẽ câu trả lời này sẽ hữu ích: gis.stackexchange.com/questions/41977/ triệt
user7172

Câu trả lời:



3

Bạn có thể sử dụng một plugin tôi đã viết, xem https://plugins.qgis.org/plugins/SortLayers/

Plugin này sắp xếp theo thứ tự bảng chữ cái tất cả các lớp trong Bảng điều khiển Lớp (từ A đến Z hoặc từ Z đến A).

Bạn sử dụng nó bằng cách nhấn một nút.


Vui lòng chỉnh sửa câu trả lời của bạn để cung cấp một số thông tin về những gì plugin của bạn làm, cách sử dụng nó và những gì nó làm để trả lời câu hỏi.
Midavalo
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.