Metainformationen zur Seite
Fortgeschrittenes Gestalten und Beschriften
In den häufigsten Fällen genügen uns die einfachen von QGIS angebotenen Funktionen zur Gestaltung und Beschriftung von Layern. Das wären:
- Symbolisierung: Einzelysmbol, Kategorisiert und Abgestuft
- Beschriftung: Keine Beschriftung, Einzelne Beschriftung
Diese einfachen Darstellungs-und Beschriftungsmethoden verwenden die Attributwerte aus der Attributtabelle des Layers und gestalten Sie nach den vom Nutzer getroffenen Einstellungen für Farbe, Form, Klassenzahl- und Größe etc. Möchten wir aber mehr Einfluss darauf nehmen, wie die Geometrien unsere Layer gestaltet werden sollen, oder bevorzugen wir anstatt einer statischen, eine dynamische Gestaltung oder Beschriftung, so müssen wir uns vor allem mit der Regelbasierte Darstellung / Beschriftung und der Feld,- Ausdruck- oder Variablien Definierte-Übersteuerung beschäftigen.
Regelbasierte Darstellung
Im folgenden kommt dieser Datensatz (GeoPackage) zur Anwendung: Mainz-Landuse.GPKG
Die auf Feldern (Werte eines oder mehrere Attribute) basierende Darstellung ist die Methode, einen Layer nach seinen Attributeigenschaften zu gestalten: Trifft in einem Attribut ein vorgegebener Wert zu, so wird die entsprechende vom Nutzer zugewiesene Symbolisierung verwendet. Dies verstehen wir bereits als Regel, denn auch bei den oben genannten „einfachen“ Funktionen zur Gestaltung und Beschriftung, kommen Regeln zu Einsatz. Sichtbar wird das, wenn man Folgendes versucht:
Wählen Sie die Darstellungsmethode Kategorisiert und klassifizieren Sie nach einem beliebigen Attribut. Wenn Sie dann auf Regelbasierend wechseln, sehen Sie, was QGIS bei der Kategorisierung tatsächlich tut:
Richtig! QGIS erstellt Regeln - und das tut QGIS immer, nur manchmal sind sie nicht sichtbar für den Anwender.
QGIS verwendet also Regeln oder auch Ausdrücke genannt. Sie werden in einer SQL-ähnlichen Syntax geschrieben. Der Anwender kann den Ausdruck als Fließtext schreiben oder hat die Möglichkeit ihn „zurecht zu klicken“ in dem er den Ausdrucksdialog » verwendet.
Eine Regel bzw. ein Ausdruck setzt sich zusammen aus Feldern und Werten sowie Operatoren, Bedingungen, Funktionen etc. Die Funktionsliste ist sehr lang und mit QGIS3 ein ganzes Stück länger geworden… Die Funktionsliste im (derzeit aktuellsten) QGIS-Handbuch zeigt sie zu Zeiten von QGIS 3.4
Es sind die gleichen Regeln, welche wir z.B. bei Abfragen formulieren oder um die Attributliste zu filtern. Wer Funktion und Schreibweise von Regeln / Ausdrücken beherrscht, beherrscht QGIS!
Im folgenden Screencast werden einfache Regeln geschrieben um mit Ihnen die gewünschten Landnutzungen zu klassifizieren.
OpenStreetMap liefert u. A. vollständige Landnutzungspolygone. Diese dienen uns hier am Beispiel Mainz. Die Regeln sind einfach: Trifft in einem gewählten „Attribut“ der eingegebene 'Wert' zu, so wird die vom Nutzer gewünschte Signatur verwendet.
Attribute werden in doppelten Anführungszeichen („Attribut“), Werte in einfachenAnführungszeichen ('Wert') geschrieben!
Die verwendeten Regeln lauten:
„landuse“ = 'residential
'
„landuse“ = 'retail
'
„landuse“ in ('industrial','commercial')
1)
„landuse“ not in ('retail','commercial','residential','industrial')
2)
Leider werden in der deutschen Übersetzung von QGIS verschiedene Begrifflichkeiten für ein und die selbe Sache verwendet: Attribute (englisch: Atribute) werden auch als „Spalten“ oder „Felder“ bezeichnet. Werte (englisch: Value) werden oft ebenfalls als „Felder“ bezeichnet.
Regelbasierte Beschriftung
Analog zur regelbasierten Darstellung, können auch Regeln für Beschriftungen erstellt werden. So ist es möglich, für unterschiedliche Objekte (also die sich in Ihren Attributeigenschaften unterscheiden) auch unterschiedliche Beschriftungen/Formatierungen zu erstellen. Aber…
Die Regelbasierte Beschriftung hat noch Ihre Schwächen! Oft bietet es sich eher an die Feld,- Ausdruck- oder Variablen-Definierte Übersteuerung (im folgendes Kapitel) zu verwenden.
Feld,- Ausdruck- oder Variablen-Definierte Übersteuerung
Jeder Parameter, jede Formatierungseigenschaft, jede Strichlinie, Farbe, Größe… alles lässt sich manuell eingeben - so wie wir es von den meisten Programmen her kennen und so wie es bei QGIS auch zu sein scheint. Aber ein unauffälliges Symbol hinter jeder Einstellung: …deutet darauf hin: QGIS kann auch dynamisch! Wenn wir das Symbol aktivieren, öffnet sich dieses Menü:
Die Datendefinierte Übersteuerung ermöglicht, alle statischen Angaben, mit dynamischen zu „überschreiben“. Denn sobald das Datenübersteuerung-Symbol gelb aufleuchtet, ist es aktiv und die manuelle Angabe hat keine Bedeutung mehr. Aber was sind unsere „definierenden Daten“?
Variable: Diese werden für das Projekt unter den Projekt → Projekteigenschaften → Variablen
festgelegt. Es gibt bereits einige und es können beliebig viele weitere hinzugefügt werden.
Attributfeld: Der jeweilige Wert eines Attributs z.B. „FrontSize“ definiert die Eigenschaft.
Ausdruck: Es kann eine Regel/Ausdruck, welche mit ihrer vollständigen Komplexität geschrieben werden kann, eingesetzt werden.
In QGIS3 gibt es eine neue Funktion, mit welcher das vorherige Erstellen neuer Attribute in der Attributtabelle überflüssig wird. QGIS3 kann diese Attribute in der Projektdatei bzw. in eine angehängte Datei schreiben: Auxiallary Storage oder Hilfslayer. Versuchen Sie es: Datendefinierte Übersteuerung → Daten in Projekt speichern
(es wird automatisch eine neue virtuelle Spalte in der Attributtabelle angelegt. Daten die hier hinein geschrieben werden, befinden sich nicht im Layer, sondern in/bei der Projektdatei)