对于QGIS中具有相同值的多个点仅显示一个标签


9

我有一个点shapefile,在某些情况下,它具有多个具有相同ID的点。正常的标签显示看起来不太好。那么在QGIS中是否可以只显示一个标签?我找不到检查/取消检查选项...也许可以通过带有“ GROUP BY id”的SQL查询来检索标签?

在此处输入图片说明

Answers:


6

我假设您具有具有相同ID的多个功能,而不是真正的多点。如果需要,还有一个真正的多点解决方案,请告诉我。

如果要显示此功能的标签,则可以将一个整数字段添加到您的shapefile中,如果要显示此功能的标签,则为1,而其他字段则为0。

然后在标签的渲染器中,使用data-defined属性显示或不显示标签。

在此处输入图片说明

编辑:

@Kazuhito的回答给了我进一步的想法。

您还可以添加两个字段(例如x_lbl和y_lbl),并通过使用数据定义的标签放置属性来使用它们来完全控制标签的放置。在这些字段中填写需要标签的坐标,然后可以从QGIS界面轻松修改位置。查找以下按钮:

在此处输入图片说明


1
我想知道您是否找到了用于标记多点
要素的

5

如果virtual layer选择a,

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

将在每个组的中心周围放置一个点。

我喜欢@YoLecomte的回答,它使我们能够更好地控制选择放置标签的位置。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.