Показывать только одну метку для нескольких точек с одинаковым значением в QGIS

9

У меня есть точечный шейп-файл, который в нескольких случаях имеет несколько точек с одинаковым идентификатором. Не выглядит хорошо с обычным дисплеем меток. Возможно ли в QGIS отображать только одну метку? Я не смог найти опцию проверки / снятия галочки ... Возможно, было бы возможно получить метки с помощью SQL-запроса с »GROUP BY id«?

введите описание изображения здесь

luftikus143
источник

Ответы:

6

Я предполагаю, что у вас есть несколько функций с одинаковым идентификатором, а не реальная многоточечная. Если нужно, есть решение с реальной многоточечностью, дайте мне знать.

Вы можете добавить целочисленное поле в свой шейп-файл, заполненный 1, если вы хотите отобразить метку для этих функций и 0 для других.

Затем в визуализаторе метки используйте определяемое данными свойство для показа или нет меток.

введите описание изображения здесь

РЕДАКТИРОВАТЬ :

Ответ @Kazuhito дал мне идею пойти дальше.

Вы также можете добавить два поля (например, x_lbl и y_lbl) и использовать их, чтобы получить полный контроль над размещением вашей метки, используя свойства, определенные для размещения метки. Заполните эти поля с координатами, где вам нужна ваша метка, вы можете легко изменить место из интерфейса QGIS. Ищите эти кнопки:

введите описание изображения здесь

YoLecomte
источник
1
Мне интересно, нашли ли вы какое-либо решение для маркировки многоточечных объектов, потому что я застрял с этой проблемой для реальной многоточечной геометрии сейчас ...
she_weeds
5

Если virtual layerвариант,

SELECT id, st_pointonsurface(st_union(geometry))
FROM your_layer
GROUP BY id

поместит точку вокруг центра каждой группы.

Мне нравится ответ @YoLecomte, который дает нам больше возможностей для выбора места размещения метки.

Казухито
источник