Làm cách nào để kết nối nhãn và điểm bằng một dòng / mũi tên?


12

Có phải bằng cách nào đó trong QGIS có thể kết nối các nhãn và điểm bằng một dòng / mũi tên hoặc một cái gì đó không? Trong bản đồ của tôi không rõ nhãn nào đi với điểm của nó. Tôi không thể mang nó lại gần hơn vì còn nhiều điểm nữa sẽ đến.nhập mô tả hình ảnh ở đây


giải pháp xof làm việc cho tôi. Nhưng tôi muốn biết liệu có thể có một chú giải ngắn trong danh sách hình dạng của mình không ... không giống như ví dụ dưới đây, với một nhãn ngắn ... ! [Thử nghiệm của tôi ] ( i.stack.imgur.com/8VWoN .png ) Cảm ơn bạn!
MathieuG

Câu trả lời:


7
  • Đầu tiên, tạo các trường ghi nhãn cho vị trí X và Y của nhãn trong bảng điểm của bạn.

  • Kích hoạt định vị X và Y trong các thuộc tính của lớp của bạn.

ghi đè

  • Tạo kiểu "Trình tạo biểu thức" mới theo kiểu điểm của bạn, đặt kiểu này thành loại đường, sau đó sử dụng các công thức sau:

    make_line (make_point ($ x, $ y), make_point ("LABEL_X", "LABEL_Y"))

Là một cải tiến, bạn có thể sử dụng các trường khác nhau (hoặc sử dụng một plugin để tạo tất cả chúng) để kiểm soát vị trí của điểm căn chỉnh. Bạn có thể sử dụng trường xoay và trường sắp xếp theo chiều dọc và ngang.

tạo kiểu

Dòng này sẽ di chuyển tương ứng đến vị trí nhãn của bạn, vì điểm đến của nó có liên quan đến trường positon nhãn.


5

Bạn có thể thử tải xuống và cài đặt plugin EasyCustomLabeling từ Plugins > Manage and Install Plugins , điều này tạo ra một lớp bộ nhớ trùng lặp của lớp vector đã chọn của bạn và chứa các thuộc tính tương tự.

( Lưu ý rằng bạn cũng sẽ cần phải tải xuống và cài đặt plugin Memory Layer Saver để lưu chính xác lớp bộ nhớ, điều này được mô tả trong phần mô tả plugin ).

Khi lớp nhãn của bạn được tạo, bạn có thể chơi với vị trí nhãn và kiểu của lớp đó để thử và nhận được những gì bạn đang tìm kiếm:

Cắm vào

Cài đặt lớp nhãn

Lớp nhãn

Hi vọng điêu nay co ich!


cảm ơn bạn @ Joseph. Có đúng không khi tôi chỉ có thể chọn một thuộc tính với plugin này? (btw: đây có nên là một câu hỏi mới không?)
kevkev

Không! Không, nếu nó đơn giản là có / không có câu hỏi =). Nhưng bạn đã đúng, chỉ có một thuộc tính cho mỗi lớp, vì vậy bạn có thể tạo nhiều lớp nhãn nếu muốn.
Joseph

Trên thực tế là có thể. Sau khi tạo lớp nhãn, có thể thay đổi các thuộc tính ở đó: D
kevkev

@KevinSuhr - Rực rỡ! Cảm ơn, tôi đã học được điều gì đó =)
Joseph

1
Từ bài đăng của @underdark; Trường hợp sử dụng phổ biến là muốn hiển thị nhiều giá trị thuộc tính trong nhãn của tính năng. Sử dụng Máy tính trường, bạn có thể kết hợp chúng thành nhãn nhiều dòng. Tất cả bạn cần là kết hợp các trường với | | toán tử và thêm '\ n' (dòng mới) bất cứ nơi nào cần ngắt dòng: Field1 || '\ n' | | Field2
Lee

4

Liên quan đến phương thức của gisinside: bước đầu tiên của việc thêm các thuộc tính x / y thủ công cho các nhãn có thể được bỏ qua; (có lẽ kể từ QGIS3?) đã có một biến phụ cho vị trí nhãn đã có. Các biến ar được gọi tương ứng: "phụ trợ_st Storage_labeling_poseitionx" và "phụ_st Storage_labeling_poseitiony".

Vì vậy, trong Bước Nr. 2 bạn có thể sử dụng biểu thức này để vẽ các đường:

make_line (make_point ($ x, $ y), make_point ("phụ_st Storage_labeling_poseitionx", "phụ trợ_st Storage_labeling_poseitiony"))

Tuy nhiên, lưu ý rằng các biến phụ chỉ nhận được giá trị được gán, nếu bạn chạm / di chuyển nhãn bằng công cụ di chuyển nhãn. Do đó, bạn chỉ thấy các dòng cho các nhãn đã được di chuyển thủ công xung quanh.


2

Nếu bạn đang sử dụng PostGIS cho dữ liệu không gian của mình, bài đăng này https://sigsemgrilhetas.wordpress.com/2015/01/12/etiquetas-com-guias-em-qgis-e-postgis-labels-lead-lines-with- qgis-and-postgis / by Alexandre Neto giải thích cách các dòng hàng đầu có thể được thêm vào các điểm trong cơ sở dữ liệu của bạn.

Đây là một hướng dẫn tốt bằng văn bản đáng đọc, nó cũng có một bộ phim trong bài cho thấy cách nó hoạt động.

Hi vọng điêu nay co ich.

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.