Gibt es eine Möglichkeit, eine QGIS-Stilregel zu definieren, um nur Punktmarkierungen anzuzeigen, wenn deren Beschriftung angezeigt wird?
Mein Ziel ist es, alle Punkte auszuschließen, die aufgrund einer Kollision zwischen Beschriftungen nicht beschriftet sind.
Beispiel:
Antworten:
Dies ist nicht ideal, aber wenn Sie damit einverstanden sind, dass das Etikett immer auf der Markierung angezeigt wird, können Sie einen Hintergrund auf Ihrem Etikett als Problemumgehung verwenden.
Nachteile:
Ein Beispiel, bei dem ein Dateiname aus "field_1" übernommen und die Erweiterung ".jpg" entfernt wird, um Beschriftungstext für Fotostandorte zu erstellen:
Die Ergebnisse:
vergrößert: und verkleinert:
(Hinweis - Die Richtung, in die das SVG-Symbol zeigt, wurde durch einen Ausdruck festgelegt, der auf ein anderes Feld in der Tabelle verweist.)
quelle
Haben Sie sich Nyall Dawsons ausgezeichnetes Tutorial unter http://nyalldawson.net/2015/07/recent-labelling-improvements-in-qgis-master/ angesehen ?
Im dritten Abschnitt seines Tutorials beschreibt er das Erstellen einer Hindernisebene. Dies kann Ihnen helfen.
quelle
Wählen Sie einfach alle Werte mit einer Beschriftung mithilfe einer Abfrage aus, exportieren Sie sie in eine neue Ebene und verwenden Sie dann die neu erstellte Ebene.
quelle
Legen Sie eine Regel (regelbasiertes Styling) für Ihr Symbol fest :
"label" IS NOT NULL
(Angenommen, Ihr Feld für Beschriftungen heißt "Beschriftung")
Jetzt werden Symbole angezeigt, wenn das Feld für Beschriftungen nicht leer ist.
quelle