Wichtig

Übersetzen ist eine Gemeinschaftsleistung Sie können mitmachen. Diese Seite ist aktuell zu 99.71% übersetzt.

16.1. Vektorlayereigenschaften

Der Layereigenschaften Dialog für Vektorlayer enthält generelle Einstellungen, um das Aussehen der Layerobjekte in der Karte (Symbologie, Beschriftung, Diagramme) und die Interaktion mit der Maus (Aktionen, Kartentipps, …) zu verwalten. Er bietet auch Informationen über den Layer.

Sie können den Layereigenschaften Dialog öffnen, indem Sie:

  • im Layer `Bedienfeld einen Doppelklick auf den Layer machen oder einen Rechtsklick und im Kontextmenü :guilabel:`Eigenschaften … auswählen

  • in der Menüleiste Layer ► Layereigenschaften … auswählen wenn der Layer aktiv ist

Der Layereigenschaften Dialog für Vektorlayer bietet die folgenden Bereiche:

metadata Information

system Quelle

symbology Symbolisierung[1]

labelingSingle Beschriftungen[1]

labelmask Masken[1]

3d 3D-Ansicht[1]

diagram Diagramme

sourceFields Felder

formView Attributformular

join Verknüpfungen

auxiliaryStorage Hilfsspeicher

action Aktionen

display Anzeige

rendering Darstellung

temporal Zeitlich

expression Variablen

elevationscale Höhe

editMetadata Metadaten

dependencies Abhängigkeiten

legend Legende

overlay QGIS Server

digitizing Digitalisieren

Externe Plugins[2] Reiter

[1] Auch im Bedienfeld Layergestalltung verfügbar

Durch das Installieren von [2] Plugins können hier im Dialog Layereigenschaften weitere Tabs hizugefügt werden. Diese werden nicht in dieser Dokumentation behandelt, bitte schauen Sie in der entsprechenden Dokumentation nach.

Tipp

Layereigenschaften speichern und teilen

Mit dem Stil Menü unten im Dialogfenster ist es möglich die Layereigenschaften (oder Teile davon) zu speichern und zu laden . Für mehr Informationen s. Verwalten von benutzerdefinierten Stilen.

Bemerkung

Da die Eigenschaften von eingebetteten Layern (see Layer aus externen Projekten einbinden) aus der ursprünglichen QGIS-Projektdatei stammen und um Änderungen zu vermeiden, die mit diesen Einstellungen Konflikte verursachen könnten, ist der Ebeneneigenschaften-Dialog für eingebetteten Ebenen nicht verfügbar.

16.1.1. Eigenschaften Information

Die Registerkarte |Metadaten| Information ist nur zum Lesen vorgesehen und stellt einen interessanten Ort dar, um schnell zusammengefasste Informationen und Metadaten über den aktuellen Layer zu erhalten. Die bereitgestellten Informationen sind:

  • allgemeine Angaben wie Name im Projekt, Quellpfad, Liste der Hilfsdateien, letzte Speicherzeit und -größe, der verwendete Datenanbieter

  • abhänigig vom Daten-Anbieter des Layers: Speicherformat, Geometrietyp, Kodierung der Datenquelle, Ausdehnung, Anzahl der Objekte…

  • das Koordinatenbezugssystem: Name, Einheiten, Methode, Genauigkeit, Referenz (d.h., ob es statisch oder dynamisch ist)

  • aus den ausgefüllten Metadaten: Zugriff, Ausdehnung, Links, Kontakte, Protokoll…

  • und mit seiner Geometrie (räumliche Ausdehnung, KBS…) oder seinen Attributen (Anzahl der Felder, Typ jedes Feldes…) zusammenhängen.

16.1.2. Eigenschaften Quelle

system Auf dieser Registerkarte können Sie allgemeine Einstellungen für die Vektorebene festlegen.

../../../_images/vector_source_menu.png

Abb. 16.1 Registerkarte Quelle im Menu Vektorlayereigenschaften

16.1.2.1. Einstellungen

  • Lege einen layernamen fest, der sich vom Dateinamen der Ebene unterscheidet und zur Identifizierung der Ebene im Projekt verwendet wird (im Layerbedienfeld, mit Ausdrücken, in der Drucklayoutlegende, …)

  • Wählen Sie je nach Datenformat die Datenquellenkodierung, wenn sie von QGIS nicht korrekt erkannt wird.

16.1.2.2. Koordinatenbezugssystem und Geometrie

  • Zeigt das Zugeordnete Koordinatenbezugssystem (KBS) des Layers an. Sie können das KBS des Layers ändern, indem Sie ein kürzlich verwendetes KBS aus der Dropdown-Liste auswählen oder auf die Schaltfläche setProjection KBS auswählen klicken (siehe Auswahl des Koordinatenbezugssystems). Verwenden Sie dieses Verfahren nur, wenn das auf den Layer angewendete KBS ein falsches KBS ist oder wenn kein KBS angewendet wurde. Wenn Sie Ihre Daten in ein anderes KBS projizieren möchten, verwenden Sie stattdessen die Algorithmen zur Layer-Reprojektion von der Verarbeitung oder Speichern Sie die Daten in einem anderen Layer.

  • Erstellen eines räumlichen Index (nur für OGR-unterstützte Formate).

  • Ausdehnung aktualisieren für den Layer.

16.1.2.3. Abfrageerstellung

Der Abfrage-Dialog ist über die Schaltfläche Abfrageerstellung unten auf der Registerkarte Quelle im Dialogfeld Layer-Eigenschaften im Bereich Objektfilter auf Datenanbieter zu erreichen.

Die Abfrageerstellung bietet eine Schnittstelle, mit der Sie eine Teilmenge der Objekte im Layer mit einer SQL-ähnlichen WHERE-Klausel definieren und das Ergebnis im Hauptfenster anzeigen können. Solange die Abfrage aktiv ist, sind nur die Objekte, die ihrem Ergebnis entsprechen, im Projekt verfügbar.

Sie können ein oder mehrere Layer-Attribute verwenden, um den Filter in der Abfrageerstellung zu definieren. Die Verwendung von mehr als einem Attribut wird in Abb. 16.2 gezeigt. In diesem Beispiel kombiniert der Filter die Attribute

  • toa (DateTime Feld: cast("toa" as character) > '2017-05-17' und cast("toa" as character) < '2019-12-24T18:00:00'),

  • name (String Feld: "name" > 'S') und

  • FID (Integer Feld: FID > 10)

unter Verwendung der Operatoren AND, OR und NOT und Klammern. Diese Syntax (einschließlich des DateTime-Formats für das Feld toa) funktioniert für GeoPackage-Datensätze.

Der Filter wird auf der Ebene des Datenanbieters (OGR, PostgreSQL, MS SQL Server…) erstellt. Die Syntax hängt also vom Datenanbieter ab (DateTime wird z. B. nicht für das ESRI Shapefile-Format unterstützt). Der vollständige Ausdruck:

cast("toa" as character) > '2017-05-17' AND
cast("toa" as character) < '2019-12-24T18:00:00' AND
NOT ("name" > 'S' OR FID > 10)

Sie können den Dialog Abfrageerstellung auch mit der Option Filter… aus dem Menü Layer oder dem Layer-Kontextmenü öffnen. Die Abschnitte Felder, Werte und Operatoren im Dialog helfen Ihnen, die SQL-ähnliche Abfrage zu konstruieren, die im Feld Datenanbieterspezifischer Filterausdruck angezeigt wird.

../../../_images/queryBuilder.png

Abb. 16.2 Abfrageerstellung

Die Liste Felder enthält alle Felder des Layers. Um einen Feldnamen hinzuzufügen, doppelklicken Sie einfach auf den Namen oder geben Sie ihn in das Ausdrucks-Feld ein.

Der Bereich Werte listet die Werte des aktuell ausgewählten Feldes auf. Um alle eindeutigen Werte eines Feldes aufzulisten, klicken Sie auf die Schaltfläche Alle. Um stattdessen die ersten 25 eindeutigen Werte der Spalte aufzulisten, klicken Sie auf die Schaltfläche Stichprobe. Um dem Feld SQL WHERE-Klausel einen Wert hinzuzufügen, doppelklicken Sie auf seinen Namen in der Liste Werte. Mit dem Suchfeld am oberen Rand des Rahmens „Werte“ können Sie die Attributwerte in der Liste leicht durchsuchen und finden.

Der Abschnitt Operatoren enthält alle verwendbaren Operatoren. Um einen Operator in das SQL WHERE-Klauselfeld einzufügen, klicken Sie auf die entsprechende Schaltfläche. Es stehen relationale Operatoren ( =, >, …), String-Vergleichsoperatoren (LIKE) und logische Operatoren (AND, OR, …) zur Verfügung.

Die Schaltfläche Test hilft Ihnen bei der Überprüfung Ihrer Abfrage und zeigt in einem Meldungsfenster die Anzahl der Objekte an, die der aktuellen Abfrage entsprechen. Verwenden Sie die Schaltfläche Löschen, um die SQL-Abfrage zu löschen und den Layer in seinen ursprünglichen Zustand zurückzuversetzen (d.h. alle Objekte vollständig zu laden). Es ist möglich, die Abfrage als .QQF Datei zu speichern oder sie mit Laden… aus einer solchen Datei in den Dialog zu kopieren.

Wenn ein Filter angewendet wird, behandelt QGIS die resultierende Teilmenge so, als wäre sie der gesamte Layer. Wenn Sie z.B. einen Filter auf ein Feld für Verwaltungseinheiten angewendet haben ( z.B. „TYPE_2“ = 'Stadtbezirk'), können Sie keine Objekte anzeigen, abfragen, speichern oder bearbeiten, die in diesem Feld über ein anderes Attriubt verfügen, also z.B. wenn in dem Feld „TYPE_2“ das Attribut ``‘Gemeinde‘``eingetragen ist.

Tipp

Gefilterte Layer werden im „ Layer“ Bedienfeld gekennzeichnet

Im Bedienfeld Layer wird ein gefilterter Layer mit einem Symbol indicatorFilter Filter daneben angezeigt, welches die verwendete Abfrage anzeigt, wenn der Mauszeiger über der Schaltfläche schwebt. Ein Doppelklick auf das Symbol öffnet den Abfrageerstellung-Dialog zur Bearbeitung. Dies kann auch über das Menü Layer ► Filter… erreicht werden.

16.1.3. Eigenschaften Symbolisierung

Die Registerkarte |Symbolik| Symbolisierung bietet Ihnen ein umfassendes Werkzeug zum Rendern und Symbolisieren Ihrer Vektordaten. Sie können sowohl Werkzeuge verwenden, die für alle Vektordaten gelten, als auch spezielle Symbolisierungswerkzeuge, die für die verschiedenen Arten von Vektordaten entwickelt wurden. Alle Typen haben jedoch die folgende Dialogstruktur gemeinsam: Im oberen Teil befindet sich ein Widget, das Ihnen hilft, die Klassifizierung und das Symbol für Objekte vorzubereiten, und im unteren Teil das Widget Layerdarstellung.

Tipp

Wechseln Sie schnell zwischen verschiedenen Layerdarstellungen

Über das Menü Stile ► Hinzufügen am unteren Rand des Dialogs Layer-Eigenschaften können Sie so viele Stile wie nötig speichern. Ein Stil ist die Kombination aller Eigenschaften eines Layers (z.B. Symbologie, Beschriftung, Diagramm, Formularfelder, Aktionen…), wie Sie sie wünschen. Wechseln Sie dann einfach über das Kontextmenü des Layers im Layers Panel zwischen den Stilen, um automatisch verschiedene Darstellungen Ihrer Daten zu erhalten.

Tipp

Symbologie exportierten

Sie haben die Option die Vektorsymbologie von QGIS nach Google *.kml, *.dxf und MapInfo .*.tab Dateien zu exportieren. Öffnen Sie einfach das Rechte-Maustasten-Menü des Layers und klicken Sie auf Speichern als … ` um den Namen der Ausgabedatei und ihr Format festzulegen. Verwenden Sie im Dialog das :guilabel:`Darstellungsexport Menü um die Symbologie entweder als Objektdarstellung ► oder Symbollayerdarstellung ► zu speichern. Wenn Sie Symbollayer verwendet haben wird empfohlen die zweite Einstellung zu benutzen.

16.1.3.1. Objekt Darstellung

Der Renderer ist dafür verantwortlich, ein Objekt zusammen mit dem richtigen Symbol zu zeichnen. Unabhängig vom Typ der Layer-Geometrie gibt es vier gängige Renderer-Typen: Einzelsymbol, kategorisiert, abgestuft und regelbasiert. Für Punkt-Layer stehen die Renderer Punktversatz, Punkthäufung und Heatmap zur Verfügung, während Polygon-Layer auch mit den Renderern Objekte verschmolzenen, invertierte Polygone und 2,5 D gerendert werden können.

Es gibt keinen kontinuirliche Farbe Renderer da es in der Tat einfach ein spezieller Fall des Abgestuft Renderers ist. Die Kategorisiert und Abgestuft Renderer können erstellt werden indem ein Symbol und ein Farbverlauf festgelegt werden - Sie werden die Farben für Symbole angemessen einsetzen. Für jeden Datentyp (Punkte, Linien und Polygone) sind Symbollayertypen erhältlich. Abhängig vom ausgesuchten Renderer gibt es verschiedene zusätzliche Bereiche.

Bemerkung

Wenn Sie den Darstellungstyp beim Einstellen des Stils eines Vektorlayers ändern werden die Einstellungen für das Symbol beibehalten. Beachten Sie dass dieses Vorgehen nur für eine Änderunge funktioniert. Wenn Sie den Darstellungstyp wiederholt ändern gehen die Einstellungen für das Symbol verloren.

Einzelsymbol Darstellung

Der Renderer singleSymbol Einzelsymbol wird verwendet, um alle Objekte des Layers mit einem einzigen benutzerdefinierten Symbol darzustellen. Siehe Die Symbolauswahl für weitere Informationen zur Symboldarstellung.

../../../_images/singlesymbol_ng_line.png

Abb. 16.3 Linieneigenschaften Einzelsymbol

Keine Symbole

Der Renderer nullSymbol Keine Symbole ist ein spezieller Anwendungsfall des Renderers Einzelsymbol, da er auf alle Objekte das gleiche Rendering anwendet. Mit diesem Renderer wird für Objekte kein Symbol gezeichnet, aber Beschriftungen, Diagramme und andere nicht-symbolische Teile werden weiterhin angezeigt.

Die Layer in der Kartenansicht können nach wie vor ausgewählt werden, und die ausgewählten Objekte werden mit einem Standardsymbol gerendert. Objekte, die gerade bearbeitet werden, werden ebenfalls angezeigt.

Dies ist eine praktische Möglichkeit für Layer, für die Sie nur Beschriftungen oder Diagramme anzeigen möchten, und vermeidet die Anforderung, Symbole mit vollständig transparenten Füllungen/Rändern zu rendern, um dies zu erreichen.

Kategorisierte Darstellung

Der Renderer categorizedSymbol Kategorisiert dient zur Darstellung der Objekte eines Layers unter Verwendung eines benutzerdefinierten Symbols, dessen Aspekt die diskreten Werte eines Feldes oder eines Ausdrucks widerspiegelt.

../../../_images/categorysymbol_ng_line.png

Abb. 16.4 Kategorisierte Symbolisierungsoptionen

Um eine kategorisierte Symbologie für einen Layer zu verwenden:

  1. Wählen Sie den Wert der Klassifizierung: Es kann ein bestehendes Feld oder ein Ausdruck sein, den Sie in das Feld eingeben oder über die zugehörige Schaltfläche |Ausdruck| erstellen können. Die Verwendung von Ausdrücken für die Kategorisierung vermeidet die Notwendigkeit, ein Feld nur für Symbolzwecke zu erstellen (z. B. wenn Ihre Klassifizierungskriterien von einem oder mehreren Attributen abgeleitet sind).

    Der zur Klassifizierung von Objekten verwendete Ausdruck kann von beliebiger Art sein, z. B. kann er:

    • ein Vergleich sein. In diesem Fall liefert QGIS die Werte 1 (True) und 0 (False). Einige Beispiele:

      myfield >= 100
      $id = @atlas_featureid
      myfield % 2 = 0
      within( $geometry, @atlas_geometry )
      
    • verschiedene Bereiche kombinieren:

      concat( field_1, ' ', field_2 )
      
    • eine Berechnung auf Feldern sein:

      myfield % 2
      year( myfield )
      field_1 + field_2
      substr( field_1, -3 )
      
    • verwendet werden, um lineare Werte in diskrete Klassen umzuwandeln, z. B.:

      CASE WHEN x > 1000 THEN 'Big' ELSE 'Small' END
      
    • mehrere diskrete Werte zu einer einzigen Kategorie zusammenfassen, z. B.:

      CASE
      WHEN building IN ('residence', 'mobile home') THEN 'residential'
      WHEN building IN ('commercial', 'industrial') THEN 'Commercial and Industrial'
      END
      

    Tipp

    Sie können zwar jede Art von Ausdruck verwenden, um Objekte zu kategorisieren, aber für einige komplexe Ausdrücke kann es einfacher sein, Regelbasiertes Rendering zu verwenden.

  2. Konfigurieren Sie das Symbol, das als Basissymbol für alle Klassen verwendet werden soll;

  3. Geben Sie den Farbverlauf an, d.h. den Bereich von Farben, aus dem die Farbe für jedes Symbol ausgewählt wird.

    Neben den üblichen Optionen des Farbverlauf-Werkzeug können Sie die Kategorien mit einem unchecked Zufälligen Farbverlauf versehen. Wenn Sie mit der Auswahl der Farben nicht zufrieden sind, können Sie auf den Eintrag Zufällige Farben mischen klicken, um einen neuen Satz zufälliger Farben zu erzeugen.

  4. Klicken Sie dann auf die Schaltfläche Klassifizieren, um Klassen aus den verschiedenen Werten des angegebenen Feldes oder Ausdrucks zu erstellen.

  5. Wenn Sie auf Anwenden klicken, werden die Änderungen umgesetzt und jedes Objekt auf der Kartenansicht wird mit dem Symbol seiner Klasse dargestellt.

    Standardmäßig fügt QGIS eine Klasse alle anderen Werte an die Liste an. Diese Klasse ist zwar zu Beginn leer, wird aber als Standardklasse für alle Objekte verwendet, die nicht unter die anderen Klassen fallen (z.B. wenn Sie ein Objekte mit einem neuen Werten für das Klassifizierungsfeld erstellen).

Die Standardklassifizierung kann weiter angepasst werden:

  • Sie können neue Kategorien hinzufügen, ausgewählte Kategorien entfernen oder alle Kategorien löschen.

  • Eine Klasse kann durch Deaktivieren des Kontrollkästchens links neben dem Klassennamen deaktiviert werden; die entsprechenden Objekte werden auf der Karte ausgeblendet.

  • Ziehen Sie die Zeilen per Drag-and-Drop, um die Klassen neu anzuordnen.

  • Um das Symbol, den Wert oder die Legende einer Klasse zu ändern, doppelklicken Sie auf das Element.

Wenn Sie mit der rechten Maustaste auf ein ausgewähltes Element klicken, wird ein Kontextmenü angezeigt:

  • Symbol kopieren und Symbol einfügen, eine bequeme Möglichkeit, die Darstellung des Elements auf andere anzuwenden

  • Farbe ändern… des ausgewählten Symbols/der ausgewählten Symbole

  • Deckkraft ändern… des/der ausgewählten Symbols/Symbole

  • Ausgabeeinheit ändern… des gewählten Symbols/der gewählten Symbole

  • Breite ändern… des/der ausgewählten Liniensymbole(s)

  • Größe ändern… des/der ausgewählten Punktsymbole(s)

  • Winkel ändern… des/der ausgewählten Punktsymbole(s)

  • Kategorien zusammenführen: Fasst mehrere ausgewählte Kategorien zu einer einzigen Kategorie zusammen. Dies ermöglicht eine einfachere Gestaltung von Layern mit einer großen Anzahl von Kategorien, bei denen es möglich sein kann, zahlreiche unterschiedliche Kategorien zu einer kleineren und besser handhabbaren Gruppe von Kategorien zusammenzufassen, die für mehrere Werte gelten.

    Tipp

    Da das Symbol, das für die zusammengeführten Kategorien beibehalten wird, das der obersten ausgewählten Kategorie in der Liste ist, sollten Sie die Kategorie, deren Symbol Sie wiederverwenden möchten, vor der Zusammenführung an den Anfang stellen.

  • Aufheben der Zusammenführung von Kategorien, die zuvor zusammengeführt wurden

Die erstellten Klassen erscheinen auch in einer Baumhierarchie im Layer Bedienfeld. Doppelklicken Sie auf einen Eintrag in der Kartenlegende, um das zugewiesene Symbol zu bearbeiten. Klicken Sie mit der rechten Maustaste und Sie erhalten einige Weitere Optionen.

Das Menü Erweitert ermöglicht den Zugriff auf Optionen zur Beschleunigung der Klassifizierung oder zur Feinabstimmung der Darstellung von Symbolen:

  • An gespeicherte Symbole angleichen: Unter Verwendung der Stilverwaltung wird jeder Kategorie ein Symbol zugewiesen, dessen Name den Klassifizierungswert der Kategorie darstellt

  • Symbole aus Datei zuordnen…: Wenn eine Datei mit Symbolen bereitgestellt wird, wird jeder Kategorie ein Symbol zugewiesen, dessen Name den Klassifizierungswert der Kategorie darstellt

  • Symbolebenen… um die Reihenfolge der Wiedergabe von Symbolen festzulegen.

Abgestufte Darstellung

Der Renderer graduatedSymbol Abgestuft dient zur Darstellung aller Objekte eines Layers unter Verwendung eines benutzerdefinierten Symbols, dessen Farbe oder Größe die Zuordnung des Attributs eines ausgewählten Objekts zu einer Klasse widerspiegelt.

Wie der Renderer „Kategorisiert“ ermöglicht auch der abgestufte Renderer die Definition von Rotation und Größenskala anhand bestimmter Spalten.

Genauso können Sie -analog zum Kategorisierten Renderer - im Menü auswählen:

  • Der Wert der Klassifizierung kann ein bestehendes Feld oder ein Ausdruck sein, den Sie in das Feld eingeben oder mit der zugehörigen Schaltfläche |Ausdruck| erstellen können. Durch die Verwendung von Ausdrücken für die Klassifizierung wird die Notwendigkeit vermieden, ein Feld nur für Symbologiezwecke zu erstellen (z. B. wenn Ihre Klassifizierungskriterien von einem oder mehreren Attributen abgeleitet sind).

  • Das Symbol (nutzen des Symbolauswahl Dialogs)

  • Die Legendenformatierung und die Genauigkeit

  • Die Methode, um das Symbol zu ändern: Farbe oder Größe

  • Die Farben (indem man die Farbverlaufsliste verwendet), wenn die Farbmethode ausgewählt ist

  • Die Größe (unter Verwendung des Größenbereichs und seiner Einheit)

Dann können Sie die Registerkarte Histogramm verwenden, die ein interaktives Histogramm der Werte aus dem zugewiesenen Feld oder Ausdruck anzeigt. Klassenunterbrechungen können mit dem Histogramm-Widget verschoben oder hinzugefügt werden.

Bemerkung

Sie können die statistische Zusammenfassung nutzen, um mehr Informationen über Ihren Vektorlayer zu erhalten. Siehe Das Statistik-Bedienfeld.

Zurück zu dem Klassen Reiter, Sie können die Anzahl der Klassen und auch den Modus für das Klassifizieren von Objekten innerhalb der Klassen (indem man die Modus-Liste verwendet) einstellen. Die möglichen Modi sind:

  • Gleiche Anzahl (Quantile): Jede Klasse hat die gleiche Anzahl von Elementen (die Idee eines Boxplots).

  • Gleiches Intervall: Jede Klasse hat die gleiche Größe (z. B. mit den Werten von 1 bis 16 und vier Klassen hat jede Klasse eine Größe von vier).

  • Festes Intervall: Jede Klasse hat einen festen Wertebereich (z. B. bei Werten von 1 bis 16 und einer Intervallgröße von 4 sind die Klassen 1-4, 5-8, 9-12 und 13-16).

  • Logarithmischr Maßstab: geeignet für Daten mit einem großen Wertebereich. Enge Klassen für kleine Werte und breite Klassen für große Werte (z. B. für Dezimalzahlen mit einem Bereich [0..100] und zwei Klassen, wobei die erste Klasse von 0 bis 10 und die zweite Klasse von 10 bis 100 reicht).

  • Natürliche Unterbrechungen (Jenks): Die Varianz innerhalb jeder Klasse wird minimiert, während die Varianz zwischen den Klassen maximiert wird.

  • Schöne Unterbrechungen: Berechnet eine Folge von etwa n+1 gleichmäßig verteilten „schönen“ Werten, die den Bereich der Werte in x abdecken. Die Werte werden so gewählt, dass sie 1, 2 oder 5 mal eine Potenz von 10 sind. (basierend auf pretty aus der R-Statistikumgebung https://www.rdocumentation.org/packages/base/topics/pretty).

  • Standardabweichung: Klassen werden in Abhängigkeit von der Standardabweichung der Werte gebildet.

Die Listbox in der Mitte der Registerkarte Symbology listet die Klassen mit ihren Bereichen, Bezeichnungen und Symbolen auf, die gerendert werden.

Klicken Sie auf den Klassifizieren Knopf um Klassen anhand des ausgewählten Modus zu erstellen. Jede Klasse kann anhand des Deaktivierens des Kontrollkästchens links neben dem Klassennamen ausgeschaltet werden.

Sie können das Symbol, den Wert oder die Beschriftung verändern, klicken Sie einfach auf das Element, das Sie ändern wollen.

Wenn Sie mit der rechten Maustaste auf ein ausgewähltes Element klicken, wird ein Kontextmenü angezeigt:

  • Symbol kopieren und Symbol einfügen, eine bequeme Möglichkeit, die Darstellung des Elements auf andere anzuwenden

  • Farbe ändern… des ausgewählten Symbols/der ausgewählten Symbole

  • Deckkraft ändern… des/der ausgewählten Symbols/Symbole

  • Ausgabeeinheit ändern… des gewählten Symbols/der gewählten Symbole

  • Breite ändern… des/der ausgewählten Liniensymbole(s)

  • Größe ändern… des/der ausgewählten Punktsymbole(s)

  • Winkel ändern… des/der ausgewählten Punktsymbole(s)

Das Beispiel in Abb. 16.5 zeigt den abgestuften Rendering-Dialog für den Layer major_rivers des QGIS-Beispieldatensatzes.

../../../_images/graduatedsymbol_ng_line.png

Abb. 16.5 Abgestufte Symbolisierungsoptionen

Die erstellten Klassen erscheinen auch in einer Baumhierarchie im Layer Bedienfeld. Doppelklicken Sie auf einen Eintrag in der Kartenlegende, um das zugewiesene Symbol zu bearbeiten. Klicken Sie mit der rechten Maustaste und Sie erhalten einige Weitere Optionen.

Proportionale Symbole und mehrdimensionale Analysen

Proportionale Symbole und Multivarianzanalyse sind keine Rendering-Typen, die in der Dropdown-Liste Symbologie-Rendering verfügbar sind. Wenn Sie jedoch die Option Datendefinierte Übersteuerung auf eine der vorherigen Rendering-Optionen anwenden, können Sie mit QGIS Ihre Punkt- und Liniendaten mit einer solchen Darstellung anzeigen.

Proportionale Symbole erstellen

Um ein proportionales Rendering anzuwenden:

  1. Wenden Sie zunächst auf den Layer den Einzelsymbol-Renderer an.

  2. Legen Sie dann das Symbol fest, das auf die Objekte angewendet werden soll.

  3. Wählen Sie das Element auf der obersten Ebene des Symbolbaums aus und verwenden Sie die Schaltfläche dataDefine Datendefinierte Übersteuerung neben der Option Größe (für Point Layer) oder Strichbreite (für Linienlayer).

  4. Wählen Sie ein Feld aus oder geben Sie einen Ausdruck ein, und QGIS wird für jedes Objekt den Ausgabewert auf die Eigenschaft anwenden und die Größe des Symbols in der Kartenansicht proportional anpassen.

    Falls nötig, verwenden Sie aus dem Menü der dataDefine Datendefinierten Übersteuerung die Option Assistent… um eine Transformation (exponentiell, flannery…) auf die Skalierung der Symbolgröße anzuwenden (für weitere Details siehe Verwendung des Assistenten für die datendefinierte Übersteuerung ).

Sie können die Proportionalsymbole im Layer Bedienfeld und in der Drucklayout-Legende anzeigen lassen: Klappen Sie die Dropdown-Liste Erweitert am unteren Rand des Hauptdialogs auf der Registerkarte Symbolisierung aus und wählen Sie Datendefinierte Größenlegende…, um die Legendenelemente zu konfigurieren (siehe Datendefinierte Legendengröße für weitere Einzelheiten).

Mehrdimensionale Analyse erzeugen

Eine mehrdimensionale Analyse hilft Ihnen, die Beziehungen zwischen zwei oder mehr Variablen auszuwerten z. B. kann eine als Farbverlauf und die andere als Größe dargestellt werden.

Die einfachste Art, eine multivariate Analyse in QGIS zu erstellen, ist die folgende:

  1. Wenden Sie zunächst ein kategorisiertes oder abgestuftes Rendering auf einen Layer an, indem Sie für alle Klassen denselben Symboltyp verwenden.

  2. Wenden Sie dann eine proportionale Symbolik auf die Klassen an:

    1. Klicken Sie auf die Symbol Schaltfläche oberhalb des Klassifizierungsrahmens, um zum Symbolauswahl-Dialog zu gelangen.

    2. Skalieren Sie die Größe oder Breite der Symbolisierung mithilfe der dataDefine Datendefinierte Übersteuerung wie oben beschrieben.

Wie das proportionale Symbol kann die skalierte Symbolik dem Layer-Baum hinzugefügt werden, und zwar über den kategorisierten oder abgestuften Klassensymbolen unter Verwendung der Option Datendefinierte Größenlegende. Beide Darstellungen sind auch in der Drucklayoutlegende verfügbar.

../../../_images/multivariate_example.png

Abb. 16.6 Multivariantes Beispiel mit skalierter Größenlegende

Regelbasierter Renderer

Regeln sind QGIS :ref:`Ausdrücke <vector_expressions> `, die verwendet werden, um Objekte nach ihren Attributen oder Eigenschaften zu unterscheiden, um bestimmte Rendering-Einstellungen auf sie anzuwenden. Regeln können verschachtelt werden, und Objekte gehören zu einer Klasse, wenn sie zu allen oberen Verschachtelungsebenen gehören.

Der Renderer ruleBasedSymbol Regelbasiert dient also der Darstellung aller Objekte eines Layers unter Verwendung von Symbolen, deren Aspekt die Zuordnung eines ausgewählten Objekts zu einer differenzierten Klasse widerspiegelt.

So erstellen Sie eine Regel:

  1. Aktivieren Sie eine bestehende Zeile durch Doppelklick (standardmäßig fügt QGIS automatisch ein Symbol ohne Regel hinzu, wenn das regelbasierte Rendering aktiviert wird) oder klicken Sie auf die Schaltfläche symbologyEdit Aktuelle Regel bearbeiten oder symbologyAdd Regel hinzufügen.

  2. In dem sich öffnenden Dialog Regel bearbeiten können Sie eine Beschriftung definieren, die Ihnen hilft, jede Regel zu identifizieren. Diese Beschriftung wird im Layer Bedienfeld und auch in der Legende des Drucklayouts angezeigt.

  3. Geben Sie manuell einen Ausdruck in das Textfeld neben der Option radioButtonOn Filter ein oder drücken Sie die expression Schaltfläche daneben, um den Dialog zur Erstellung von Ausdrucksfolgen zu öffnen.

  4. Verwenden Sie die bereitgestellten Funktionen und die Layer-Attribute, um einen Ausdruck zu erstellen, um die Objekte zu filtern, die Sie abrufen möchten. Wenn Sie einen Filter definiert haben, können Sie mit der Schaltfläche Test, das Ergebnis der Abfrage zu überprüfen.

  5. Sie können zusätzlich eine :guilabel:‘Beschreibung ‚ eingeben, um die der Regel zu erläutern.

  6. Sie können die Option checkbox Maßstabsbereich verwenden, um die Maßstäbe festzulegen, innerhalb derer die Regel angewendet werden soll.

  7. Konfigurieren Sie schließlich das :ref:-Symbol <symbol-selector>` welches für diese Objekte verwendet werden soll.

  8. Und drücken Sie OK.

Dem Dialogfeld Layer-Eigenschaften wird eine neue Zeile hinzugefügt, in der die Regel zusammengefasst wird. Sie können so viele Regeln wie nötig erstellen, indem Sie die obigen Schritte wiederholen oder eine bestehende Regel kopieren und einfügen. Ziehen Sie die Regeln per Drag-and-Drop übereinander, um sie zu verschachteln und die oberen Objekte der Regel in Unterklassen zu verfeinern.

Der regelbasierte Renderer kann mit kategorisierten oder abgestuften Renderern kombiniert werden. Wenn Sie eine Regel auswählen, können Sie ihre Objekte in Unterklassen organisieren, indem Sie das Dropdown-Menü Ausgewählte Regeln verfeinern verwenden. Die verfeinerten Klassen werden wie die Unterelemente der Regel in einer Baumhierarchie angezeigt, und wie bei der übergeordneten Klasse können Sie die Symbolik und die Regel jeder Klasse festlegen. Die automatische Regelverfeinerung kann auf folgender Grundlage erfolgen:

  • Maßstäbe: Aus einer Liste von Maßstäben erzeugt diese Option eine Reihe von Klassen, für die die verschiedenen benutzerdefinierten Maßstäbe gelten. Jede neue maßstabsbasierte Klasse kann ihre eigene Symbolik und ihren eigenen Definitionsausdruck haben. Dies kann z. B. eine bequeme Möglichkeit sein, dieselben Objekte mit verschiedenen Symbolen in unterschiedlichen Maßstäben darzustellen oder nur eine Reihe von Objekten in Abhängigkeit vom Maßstab anzuzeigen (z. B. lokale Flughäfen im großen Maßstab gegenüber internationalen Flughäfen im kleinen Maßstab).

  • Kategorien: wendet einen kategorisierten Renderer auf die Objekte an, die unter die ausgewählte Regel fallen.

  • oder Bereiche: wendet einen graduierten Renderer auf die Objekte an, die unter die ausgewählte Regel fallen.

Verfeinerte Klassen erscheinen wie Unterelemente der Regel in einer Baumhierarchie, und wie oben können Sie die Symbolik jeder Klasse festlegen. Die Symbole der verschachtelten Regeln werden übereinander gestapelt, seien Sie also vorsichtig bei der Auswahl der Symbole. Es ist auch möglich, das Häkchen bei Symbol im Dialog Regel bearbeiten zu entfernen, um die Darstellung eines bestimmten Symbols im Stapel zu vermeiden.

Im Dialog Regel bearbeiten können Sie die Option radioButtonOff Sonst verwenden, um alle Objekte zu erfassen, die keiner der anderen Regeln entsprechen (auf derselben Ebene). Dies kann auch erreicht werden, indem man ELSE in die Spalte Regel im Hauptfenster des Dialogs :guilabel:‘Regelbasierend“ schreibt.

Wenn Sie mit der rechten Maustaste auf ein ausgewähltes Element klicken, wird ein Kontextmenü angezeigt:

  • Kopieren und Einfügen stellt eine bequeme Möglichkeit dar, neue Regeln auf der Grundlage vorhandener zu erstellen

  • Symbol kopieren und Symbol einfügen, eine bequeme Möglichkeit, die Darstellung des Elements auf andere anzuwenden

  • Farbe ändern… des ausgewählten Symbols/der ausgewählten Symbole

  • Deckkraft ändern… des/der ausgewählten Symbols/Symbole

  • Ausgabeeinheit ändern… des gewählten Symbols/der gewählten Symbole

  • Breite ändern… des/der ausgewählten Liniensymbole(s)

  • Größe ändern… des/der ausgewählten Punktsymbole(s)

  • Winkel ändern… des/der ausgewählten Punktsymbole(s)

  • Aktuelle Regel verfeinern: öffnet ein Untermenü, das es erlaubt, die aktuelle Regel mit Maßstäben, Kategorien oder Bereichen zu verfeinern. Dasselbe gilt für die Auswahl des entsprechenden Menüs am unteren Rand des Dialogs.

Wenn Sie eine Zeile im Dialogfeld des regelbasierten Renderers deaktivieren, werden die Objekte der betreffenden Regel und die verschachtelten Objekte in der Kartenansicht ausgeblendet.

Die erstellten Regeln erscheinen auch in einer Baumhierarchie in der Kartenlegende. Doppelklicken Sie auf einen Eintrag in der Kartenlegende, um das zugewiesene Symbol zu bearbeiten. Klicken Sie mit der rechten Maustaste und Sie erhalten mehr Optionen.

Das Beispiel in Abb. 16.7 zeigt den regelbasierten Rendering-Dialog für den Flüsse-Layer des QGIS-Beispieldatensatzes.

../../../_images/rulesymbol_ng_line.png

Abb. 16.7 Regelbasierte Symbolisierungsoptionen

Punktversatz-Renderer

Der Renderer pointDisplacementSymbol Point Displacement nimmt die punktförmigen Objekte, die in einer bestimmten Entfernungstoleranz zueinander liegen, und platziert ihre Symbole um ihr jeweiliges Zentrum, wobei verschiedene Platzierungsmethoden angewendet werden. Dies kann eine bequeme Möglichkeit sein, alle Objekte eines Layers zu visualisieren, auch wenn sie den gleichen Standort haben (z. B. Einrichtungen in einem Gebäude).

Um einen Punktversatz-Renderer zu konfigurieren, müssen Sie Folgendes tun:

  1. Setzen Sie das Zentrumssymbol: wie der virtuelle Punkt in der Mitte aussehen soll

  2. Wählen Sie den Renderer-Typ: wie Sie Objekte im Layer klassifizieren wollen (Einzelsymbol, kategorisiert, regelbasiert…)

  3. Drücken Sie die Schaltfläche Darstellungseinstellungen…, um die Symbologie der Objekte entsprechend dem ausgewählten Renderer zu konfigurieren

  4. Geben Sie die Distance-Toleranz an, bei der nahe Objekte als überlappend betrachtet und dann über denselben virtuellen Punkt verschoben werden. Unterstützt gemeinsame Symboleinheiten.

  5. Konfigurieren Sie die Platzierungsmethode:

    • Ring: places all the features on a circle whose radius depends on the number of features to display.

    • Concentric rings: uses a set of concentric circles to show the features.

    • Grid: generates a regular grid with a point symbol at each intersection.

  6. Verdrängte Symbole werden auf den Verlagerungslinien platziert. Während der minimale Abstand der Verlagerungslinien vom Renderer der Punktsymbole abhängt, können Sie dennoch einige ihrer Einstellungen wie Strichbreite, Strichfarbe und Größenanpassung anpassen (z.B. um mehr Abstand zwischen den gerenderten Punkten zu schaffen).

  7. Verwenden Sie den Bereich Beschriftungen, um eine Punktbeschriftung durchzuführen: die Beschriftungen werden in der Nähe des verschobenen Symbols und nicht an der tatsächlichen Position des Objekts platziert.

    1. Wählen Sie das Beschriftungsattribut: ein Feld des Layers, das für die Beschriftung verwendet werden soll

    2. Geben Sie die Eigenschaften und die Größe der Schriftart an

    3. Wählen Sie eine Beschriftungsfarbe

    4. Legen Sie einen Beschriftungsabstandsfaktor fest: für jedes punktförmige Objekt wird die Beschriftung proportional zur Diagonale des Symbols von der Symbolmitte aus verschoben.

    5. Schalten Sie Maßstabsabhängige Beschriftung benutzen ein, wenn Sie Beschriftungen nur in Maßstäben anzeigen wollen, die größer sind als der angegebene Minimaler Kartenmaßstab.

../../../_images/poi_displacement.png

Abb. 16.8 Dialog Punktversatz

Bemerkung

Der Punktversatz-Renderer verändert die Geometrie des Objekts nicht, d. h. die Punkte werden nicht von ihrer Position verschoben. Sie befinden sich immer noch an ihrem ursprünglichen Ort. Die Änderungen sind nur visuell, zum Zweck des Renderns. Verwenden Sie stattdessen den Verarbeitungsalgorithmus Points displacement, wenn Sie verschobene Objekte erstellen möchten.

Punkthäufung-Renderer

Im Gegensatz zum Renderer pointDisplacementSymbol Punktversatz, der die Darstellung der nächstgelegenen oder überlagerten Objekte vergrößert, fasst der Renderer pointClusterSymbol Punkthäufung nahe beieinander liegende Punkte zu einem einzigen Markersymbol zusammen. Punkte, die innerhalb eines bestimmten Abstands zueinander liegen, werden zu einem einzigen Symbol zusammengeführt. Die Zusammenfassung der Punkte erfolgt auf der Grundlage der nächstgelegenen Gruppe, die gebildet wird, anstatt ihnen einfach die erste Gruppe innerhalb der Suchdistanz zuzuweisen.

Vom Hauptdialog aus können Sie:

  1. Legen Sie das Symbol fest, das den Punktcluster im Häufungssymbol repräsentieren soll; die Standarddarstellung zeigt die Anzahl der aggregierten Objekte dank der Variable @cluster_size als einfaches Markierungssymbol mit einer zusätzlichen Schriftmarkierung für die Anzahl.

  2. Wählen Sie den Renderer-Typ, d.h. wie Sie Objekte im Layer klassifizieren wollen (Einzelsymbol, kategorisiert, regelbasiert…)

  3. Drücken Sie die Schaltfläche Darstellungseinstellungen…, um die Symbolisierung der Objekte wie gewohnt zu konfigurieren. Beachten Sie, dass diese Symbolik nur bei Objekten sichtbar ist, die nicht geclustert sind, da sonst das Häufungssymbol verwendet wird. Wenn alle Objekte eines Clusters zur gleichen Darstellungs-Klasse gehören und daher die gleiche Farbe erhalten, entspricht diese Farbe der Variable @cluster_color des Clusters.

  4. Geben Sie den maximalen Abstand an, der für das Clustering von Objekten berücksichtigt werden soll. Unterstützt werden die üblichen Symboleinheiten.

../../../_images/cluster_symbol.png

Abb. 16.9 Dialog Punkthäufung

Bemerkung

Der Punkthäufung-Renderer verändert die Geometrie der Objekte nicht, d. h. die Punkte werden nicht von ihrer Position verschoben. Sie befinden sich immer noch an ihrem ursprünglichen Ort. Die Änderungen sind nur visuell, zum Zweck des Renderns. Verwenden Sie stattdessen den Verarbeitungsalgorithmus K-means clustering oder DBSCAN clustering, wenn Sie clusterbasierte Objekte erstellen möchten.

Objekte verschmolzen Renderer

Mit dem Renderer mergedFeatures Objekte verschmolzen können Flächen- und Linienfeatures vor dem Rendern in ein einziges Objekt „aufgelöst“ werden, um sicherzustellen, dass komplexe Symbole oder sich überlappende Objekte durch ein einheitliches und zusammenhängendes kartografisches Symbol dargestellt werden.

Invertierte Polygone Renderer

Der Renderer invertedSymbol Invertierte Polygone ermöglicht es dem Benutzer, ein Symbol zu definieren, das außerhalb der Polygone des Layers ausgefüllt wird. Auch hier können Sie Unter-Renderer auswählen, nämlich Einzelsymbol, abgestuft, kategorisiert, regelbasierend oder 2.5 D-Renderer.

../../../_images/inverted_polygon_symbol.png

Abb. 16.10 Invertierte Polygone Dialog

Heatmap Renderer

Mit dem Renderer heatmapSymbol Heatmap können Sie live dynamische Heatmaps für (Mehr-)Punkt-Layer erstellen. Sie können den Heatmap-Radius in Millimetern, Punkten, Pixeln, Karteneinheiten oder Zoll angeben, eine Farbrampe für den Heatmap-Stil auswählen und bearbeiten und einen Schieberegler verwenden, um einen Kompromiss zwischen Rendergeschwindigkeit und Qualität zu finden. Sie können auch eine Höchstwertgrenze festlegen und den Punkten mithilfe eines Feldes oder eines Ausdrucks ein Gewicht geben. Beim Hinzufügen oder Entfernen eines Objekts aktualisiert der Heatmap-Renderer den Heatmap-Stil automatisch.

../../../_images/heatmap_symbol.png

Abb. 16.11 Der Heatmap Dialog

2.5D Renderer

Mit dem Renderer 25dSymbol 2.5D ist es möglich, einen 2.5D-Effekt auf den Objekten Ihres Layers zu erzeugen. Sie beginnen mit der Auswahl eines Wertes für die Höhe (in Karteneinheiten). Hierfür können Sie einen festen Wert, eines der Felder Ihres Layers oder einen Ausdruck verwenden. Sie müssen auch einen Winkel (in Grad) wählen, um die Position des Betrachters zu bestimmen (0° bedeutet Westen, im Gegenuhrzeigersinn wachsend). Verwenden Sie die erweiterte Konfiguration, um die Dachfarbe und Wandfarbe einzustellen. Wenn Sie die Sonneneinstrahlung auf die Wände des Objekts simulieren möchten, müssen Sie die Option Mauern nach Perspektive schattieren aktivieren. Sie können auch einen Schatten simulieren, indem Sie eine Farbe und Größe (in Karteneinheiten) festlegen.

../../../_images/2_5dsymbol.png

Abb. 16.12 2.5D Dialog

Tipp

Verwendung des 2.5D-Effekts mit anderen Renderern

Sobald Sie den grundlegenden Stil für den 2,5D-Renderer festgelegt haben, können Sie diesen in einen anderen Renderer (Einzelsymbol, kategorisiert, abgestuft) konvertieren. Die 2,5D-Effekte werden beibehalten und alle anderen Renderer-spezifischen Optionen stehen Ihnen zur Feinabstimmung zur Verfügung (auf diese Weise können Sie z. B. kategorisierte Symbole mit einer 2,5D-Darstellung haben oder Ihren 2,5D-Symbolen ein zusätzliches Styling hinzufügen). Um sicherzustellen, dass der Schatten und das „Gebäude“ selbst nicht mit anderen Objekten in der Nähe kollidieren, müssen Sie eventuell die Symbolebenen aktivieren ( Erweitert ► Symbolebenen…). Die 2,5D-Höhen- und -Winkelwerte werden in den Variablen des Layers gespeichert, sodass Sie sie nachträglich auf der Registerkarte Variablen im Dialogfeld Eigenschaften des Layers bearbeiten können.

Eingebette Symbole Renderer

Der :guilabel:` Eingebettete Symbole` Renderer erlaubt es, die ‚native‘ Symbologie einer bereitgestellten Datenquelle anzuzeigen. Dies ist vor allem bei KML und TAB-Datensätzen der Fall, die eine vordefinierte Symbologie haben.

16.1.3.2. Layerdarstellung

Auf der Registerkarte Symbolisierung können Sie auch einige Optionen einstellen, die sich immer auf alle Objekte des Layers auswirken:

  • Deckkraft slider: Mit diesem Werkzeug können Sie unter diesem Layer liegenden Objekte in der Kartenansicht sichtbar machen. Verwenden Sie den Schieberegler, um die Sichtbarkeit Ihres Vektorlayers an Ihre Bedürfnisse anzupassen. Sie können den Prozentsatz der Sichtbarkeit auch im Menü neben dem Schieberegler genau festlegen.

  • Mischmodus auf den Ebenen Layer und Objekt: Mit diesen Werkzeugen können Sie spezielle Rendering-Effekte erzielen, die Sie bisher vielleicht nur aus Grafikprogrammen kennen. Die Pixel Ihrer überlagernden und unterlagernden Layer werden durch die in Mischmodi beschriebenen Einstellungen gemischt.

  • Wenden Sie Zeicheneffekte auf alle Layerobjekte an, mit dem Zeicheneffekte Knopf.

  • Mit Objektzeichenreihenfolge steuern können Sie die z-Reihenfolge festlegen, in der die Objekte des Layers gerendert werden sollen. Aktivieren Sie das Kontrollkästchen und klicken Sie auf die sort Schaltfläche daneben. Sie gelangen zum Dialog Reihenfolge festlegen, in dem Sie:

    1. Wählen Sie ein Feld oder erstellen Sie einen Ausdruck, der auf die Objekte des Layers angewendet werden soll.

    2. Legen Sie fest, in welcher Reihenfolge die abgerufenen Objekte sortiert werden sollen, d. h. wenn Sie Aufsteigend wählen, werden die Objekte mit niedrigerem Wert unter denen mit höherem Wert angezeigt.

    3. Definieren Sie, wann Objekte, die den Wert NULL zurückgeben, gerendert werden sollen: am Anfang (unten) oder am Ende (oben).

    4. Wiederholen Sie die obigen Schritte so oft, wie Sie Regeln verwenden möchten.

    Die erste Regel wird auf alle Objekte des Layers angewandt, wobei sie nach ihrem zurückgegebenen Wert in der Z-Ebene geordnet werden. Dann wird innerhalb jeder Gruppe von Objekten mit demselben Wert (einschließlich derjenigen mit NULL-Wert) und somit derselben Z-Ebene die nächste Regel angewandt, um sie zu sortieren. Und so weiter…

../../../_images/layer_rendering_options.png

Abb. 16.13 Layerdarstellungsoptionen

16.1.3.3. Andere Einstellungen

Symbolebenen

Für Renderer, die Symbollayer gestapelt ermöglichen (nur Heatmap nicht) gibt es eine Option, um die Darstellungsreihenfolge der einzelnen Symbolebenen zu steuern.

Bei den meisten Renderern können Sie auf die Option Symbolebenen zugreifen, indem Sie auf die Schaltfläche Erweitert unterhalb der Liste der gespeicherten Symbole klicken und Symbolebenen wählen. Für den Regelbasierter Renderer ist die Option direkt über die Schaltfläche Symbolebenen… verfügbar, während sich für den Renderer Punktversatz-Renderer die gleiche Schaltfläche im Dialog Rendering settings befindet.

Um die Symbolebenen zu aktivieren, wählen Sie checkbox Symbolebenen aktivieren. Jede Reihe zeigt eine kleine Vorschau des kombinierten Symbols, seiner Beschriftung und die individuellen Symbollayer, unterteilt in verschiedene Spalten mit einer Nummer. Die Nummern zeigen die Darstellungsreihenfolge, in der die Symbollayer gezeichnet werden. Niedrige Werteebenen werden zuerst gezeichnet, liegen ganz unten, während höhere Werte als letztes gezeichnet werden und über den anderen liegen.

../../../_images/symbol_levels.png

Abb. 16.14 Symbolebenen Dialog

Bemerkung

Wenn Symbolebenen deaktiviert werden, werden alle Symbole entsprechend ihren jeweiligen Objektreihenfolge gezeichnet. Überlappende Symbole werden einfach zu anderen darunter verschleiert. Außerdem „verschmelzen“ ähnliche Symbole nicht mit anderen.

../../../_images/symbol_levels_examples.png

Abb. 16.15 Unterschied von aktivierten (A) und deaktivierten (B) Symbolebenen

Datendefinierte Legendengröße

Wenn ein Layer den Proportionale Symbole und Multivarianzanalyse Renderer verwendet oder wenn ein Diagramm mit skalierter Größe auf den Layer angewendet ist, können Sie die Anzeige der skalierten Symbole sowohl im Layer Bedienfeld als auch in der Legende im Druck-Layout erlauben.

Um das Dialogfeld Datendefinierte Größenlegende zur Darstellung von Symbolen zu aktivieren, wählen Sie die gleichlautende Option in der Schaltfläche Erweitert unterhalb der Liste der gespeicherten Symbole. Für Diagramme ist die Option unter der Registerkarte Legende verfügbar. Der Dialog bietet die folgenden Optionen an:

  • wählen Sie die Art der Legende: radioButtonOn Legende nicht aktiviert, radioButtonOff Einzelne Legendenelemente und radioButtonOff Eingeklappte Legende. Bei der letztgenannten Option können Sie auswählen, ob die Legendenelemente am Unten oder in der Zentriert ausgerichtet werden sollen;

  • Vorschau des :ref:-Symbols <symbol-selector>` welches für die Legendendarstellung verwenden werden soll;

  • fügen Sie den Titel in die Legende ein;

  • Ändern Sie die Größe der zu verwendenden Klassen: QGIS stellt Ihnen standardmäßig eine Legende mit fünf Klassen zur Verfügung (basierend auf natürlichen Unterbrechungen), aber Sie können Ihre eigene Klassifizierung anwenden, indem Sie die Option checkbox Manuelle Klassengrößen verwenden. Verwenden Sie die Schaltflächen symbologyAdd und symbologyRemove, um die Werte und Bezeichnungen Ihrer eigenen Klassen festzulegen.

  • Für eingeklappte Legenden ist es möglich:

    • Symbole ausrichten unten oder zentriert

    • konfigurieren Sie die horizontale Führungslinie Liniensymbol vom Symbol zum entsprechenden Legendentext.

Eine Vorschau der Legende wird im rechten Bedienfeld des Dialogs angezeigt und aktualisiert, wenn Sie die Parameter einstellen.

../../../_images/data_defined_size_legend.png

Abb. 16.16 Einstellungen der datendefinierten Größenlegende

Bemerkung

Gegenwärtig kann die datendefinierte Größenlegende für Layer-Symbologie nur auf Punkt-Layer mit einfacher, kategorisierter oder abgestufter Symbologie angewendet werden.

Animationseinstellungen

Um ein beliebiges Symbol zu einem Animierten Symbol zu machen, können Sie die Animationseinstellungen verwenden. In diesem Dialog können Sie die Animation für das Symbol aktivieren und eine bestimmte Bildrate für das Neuzeichnen des Symbols festlegen.

  1. Gehen Sie zunächst auf die oberste Symbolebene und wählen Sie das Menü Erweitert in der rechten unteren Ecke des Dialogs

  2. Wählen Sie die Option Animationseinstellungen aus

  3. Aktivieren Sie das Kontrollkästchen Ist animiert, um die Animation für das Symbol zu aktivieren

  4. Konfigurieren Sie die Bildrate, d.h. wie schnell die Animation abgespielt werden soll

  5. Sie können nun die Variable @symbol_frame in jeder Eigenschaft, die in den Untersymboldaten definiert ist, verwenden, um diese Eigenschaft zu animieren.

Wenn Sie zum Beispiel die Rotation des Symbols auf den Ausdruck @symbol_frame % 360 setzen, wird das Symbol mit der Zeit rotieren, wobei die Rotationsgeschwindigkeit durch die Bildrate des Symbols bestimmt wird:

../../../_images/animated_symbol.gif

Abb. 16.17 Einstellen der Rotation des Symbols auf einen datenbasierten Ausdruck

Zeicheneffekte

Damit die Layerdarstellung verbessert und vermieden (oder zumindest reduziert) wird, dass andere Software auf die endgültige Darstellung der Karte umsortiert, bietet QGIS eine weitere leistungsfähige Funktionalität: Die Option paintEffects Zeicheneffekte, die zur Anpassung Zeicheneffekte für die Visualisierung von Vektorlayern hinzufügt.

Die Option ist im Dialog Layereigenschaften ► Symbolisierung im Bereich Layerdarstellung (gilt für den gesamten Layer) oder unter den Symboleigenschaften (gilt für entsprechende Objekte) verfügbar. Sie können beide Verwendungen kombinieren.

Zeicheneffekte können aktiviert werden, indem man die Option checkbox Zeicheneffekte aktiviert und auf die Schaltfläche paintEffects Effekte einstellen klickt. Das öffnet den Dialog Effekteigenschaften (siehe Abb. 16.18). Die folgenden Effekttypen mit eigenen Optionen sind verfügbar:

  • Quelle: Zeichnet das Symbol mit dem ursprünglichen Stil entsprechend der Konfiguration der Layereigenschaften. Die Deckkraft kann angepasst werden, ebenso wie der Mischmodus und der Zeichnungsmodus. Diese Eigenschaften lassen sich bei allen Effekten konfigurieren.

    ../../../_images/source.png

    Abb. 16.18 Zeicheneffekte: Dialog Quelle

  • Verwischen: Fügt dem Layer einen Weichzeichnungseffekt hinzu. Die benutzerdefinierten Optionen, die Sie ändern können, sind der Verwischtyp (Stapelunschärfe (schnell,…) oder Gaußscher Unschärfe (Qualität, …)) und die Verwischstärke.

    ../../../_images/blur.png

    Abb. 16.19 Zeicheneffekte: Dialog verwischen

  • Einfärben: Dieser Effekt kann verwendet werden, um eine Version des Stils mit einem einzigen Farbton zu erstellen. Die Basis wird immer eine Graustufenversion des Symbols sein und Sie können:

    • Verwenden Sie die Option selectString Graustufen, um auszuwählen, wie es erstellt werden soll: Die Optionen sind ‚Nach Helligkeit‘, ‚Nach Leuchtkraft‘, ‚Nach Durchschnitt‘ und ‚Aus‘.

    • Wenn checkbox Einfärben ausgewählt ist, kann man eine andere Farbe mischen und wählen, wie stark sie sein soll.

    • Steuern Sie die Helligkeit, Kontrast und Sättigung des resultierenden Symbols.

    ../../../_images/colorise.png

    Abb. 16.20 Zeicheneffekte: Dialog einfärben

  • Schattenwurf: Mit diesem Effekt wird ein Schatten auf das Objekt gelegt, der wie eine zusätzliche Dimension aussieht. Dieser Effekt kann durch Ändern des Winkels und des Abstands von Versatz angepasst werden, wodurch bestimmt wird, wohin sich der Schatten verschiebt und wie nah er am Ausgangsobjekt liegt. Schattenwurf hat auch die Möglichkeit, den Verwischungsradius und die Farbe des Effekts zu ändern.

    ../../../_images/drop_shadow.png

    Abb. 16.21 Zeicheneffekte: Dialog Schattenwurf

  • Innerer Schatten: Dieser Effekt ähnelt dem Effekt Schattenwurf, fügt aber den Schatteneffekt an der Innenseite der Kanten des Objekts hinzu. Die verfügbaren Optionen zur Anpassung sind dieselben wie beim Effekt Schattenwurf.

    ../../../_images/inner_shadow.png

    Abb. 16.22 Zeicheneffekte: Dialog Innerer Schatten

  • Inneres Glühen: Fügt einen Glüheffekt innerhalb des Objekts hinzu. Dieser Effekt kann durch Einstellen der Spreizen (Breite) des Glühens oder des Verwischungsradius angepasst werden. Letzterer gibt den Abstand vom Rand des Objekts an, in dem die Unschärfe auftreten soll. Zusätzlich gibt es die Möglichkeit, die Farbe des Glühens mit Einzelfarbe oder einer Farbverlauf einzustellen.

    ../../../_images/inner_glow.png

    Abb. 16.23 Zeicheneffekte: Dialog Inneres Glühen

  • Außeres Glühen: Dieser Effekt ähnelt dem Effekt Inneres Glühen, fügt aber den Glüheffekt an der Außenseite der Kanten des Objekts hinzu. Die verfügbaren Optionen zur Anpassung sind die gleichen wie beim Effekt Inneres Glühen.

    ../../../_images/outer_glow.png

    Abb. 16.24 Zeicheneffekte: Dialog Äußeres Glühen

  • Umformen: Fügt die Möglichkeit hinzu, die Form des Symbols zu transformieren. Die ersten Optionen, die zur Anpassung zur Verfügung stehen, sind Horizontal reflektieren und Vertikal reflektieren, die tatsächlich eine Spiegelung an der horizontalen und/oder vertikalen Achse erzeugen. Die anderen Optionen sind:

    • Scherung X,Y: Neigt das Objekt entlang der X- und/oder Y-Achse.

    • Skalierung X,Y: Vergrößert oder verkleinert das Objekt entlang der X- und/oder Y-Achse um den angegebenen Prozentsatz.

    • Drehung: Dreht das Objekt um seinen Mittelpunkt.

    • und Verschieben X,Y ändert die Position des Elements anhand eines auf der X- und/oder Y-Achse angegebenen Abstands.

    ../../../_images/transform.png

    Abb. 16.25 Zeicheneffekte: Dialog transformieren

Es können ein oder mehrere Effekttypen gleichzeitig verwendet werden. Sie (de)aktivieren einen Effekt über das entsprechende Kontrollkästchen in der Effektliste. Sie können den ausgewählten Effekttyp mithilfe der Option selectString Effekttyp ändern. Sie können die Effekte mit den Schaltflächen arrowUp Verschiebe aufwärts und arrowDown Verschiebe abwärts neu anordnen und mit den Schaltflächen symbologyAdd Neuen Effekt hinzufügen und symbologyRemove Effekt entfernen Effekte hinzufügen/entfernen.

Die Optionen Deckkraft und Mischmodus funktionieren ähnlich wie die in Layerdarstellung beschriebenen und können in allen Zeicheneffekten außer dem Umformen-Effekt verwendet werden.

Es gibt auch eine Option selectString Zeichenmodus für jeden Effekt, und Sie können wählen, ob das Symbol gerendert und/oder verändert werden soll, indem Sie einige Regeln beachten:

  • Die Effekte werden von oben nach unten gerendert.

  • Der Modus Nur Zeichnen bedeutet, dass der Effekt sichtbar sein wird.

  • Der Modus Nur ändern bedeutet, dass der Effekt nicht sichtbar ist, aber die Änderungen, die er anwendet, werden an den nächsten Effekt (den unmittelbar darunter liegenden) weitergegeben.

  • Der Modus Zeichnen und ändern macht den Effekt sichtbar und gibt alle Änderungen an den nächsten Effekt weiter. Befindet sich der Effekt an der Spitze der Effektliste oder ist der unmittelbar darüber liegende Effekt nicht im Änderungsmodus, wird das ursprüngliche Quellensymbol aus den Layer-Eigenschaften verwendet (ähnlich wie bei Quelle).

16.1.4. Beschriftungen Eigenschaften

Die Eigenschaft labelingSingle Beschriftungen bietet Ihnen alle notwendigen und angemessenen Möglichkeiten, um intelligente Beschriftungen auf Vektor-Layern zu konfigurieren. Dieser Dialog kann auch über das Bedienfeld Layergestaltung oder über die Schaltfläche labelingSingle Layerbeschriftungseinstellungen in der Beschriftungswerkzeugleiste aufgerufen werden.

Der erste Schritt besteht darin, die Beschriftungsmethode aus der Dropdown-Liste auszuwählen. Verfügbare Optionen sind:

  • labelingNone Keine Beschriftung: der Standardwert, der keine Beschriftungen auf dem Layer anzeigt

  • labelingSingle Einzelne Beschriftungen: Zeigt Beschriftungen auf der Karte mit einem einzelnen Attribut oder einem Ausdruck an

  • labelingRuleBased Regelbasierte Beschriftung

  • and labelingObstacle Blockierend: ermöglicht es, einen Layer nur als Hindernis für die Beschriftungen anderer Layer zu verwenden, ohne eigene Beschriftungen zu erzeugen.

Die nächsten Schritte gehen davon aus, dass Sie die Option labelingSingle Einzelne Beschriftungen wählen, wodurch sich der folgende Dialog öffnet.

../../../_images/label_menu_text.png

Abb. 16.26 Layer-Beschriftungseinstellungen - Einzelne Beschriftungen

Am oberen Rand des Dialogfelds ist eine Dropdown-Liste Wert vorhanden. Sie können eine Attributspalte auswählen, die für die Beschriftung verwendet werden soll. Standardmäßig wird der Anzeigename verwendet. Klicken Sie auf |ausdruck|, wenn Sie Beschriftungen auf der Grundlage von Ausdrücken definieren möchten - siehe Ausdrucksbasierte Beschriftungen definieren.

Bemerkung

Beschriftungen mit ihrer Formatierung können als Einträge in den Legenden angezeigt werden, wenn sie in der Registerkarte Legende aktiviert sind.

Im Folgenden werden unter verschiedenen Registerkarten Optionen zur Anpassung der Etiketten angezeigt:

Eine Beschreibung, wie die einzelnen Eigenschaften einzustellen sind, findet sich unter Einrichten einer Beschriftung.

16.1.4.1. Einstellung des automatischen Platzierungssystems

Sie können die Einstellungen für die automatische Platzierung verwenden, um ein automatisches Verhalten der Beschriftungen auf Projektebene zu konfigurieren. Klicken Sie in der rechten oberen Ecke der Registerkarte Beschriftungen auf die Schaltfläche autoPlacementSettings Automatische Platzierungseinstellungen (gilt für alle Layer), um einen Dialog mit den folgenden Optionen zu öffnen:

../../../_images/placement_engine.png

Abb. 16.27 Der Dialog für automatische Platzierungen

  • Kandidatenanzahl: berechnet und weist Linien- und Polygonobjekten die Anzahl der möglichen Beschriftungen zu, die auf ihrer Größe basieren. Je länger oder breiter ein Objekt ist, desto mehr Kandidaten hat es, und seine Beschriftungen können mit geringerem Kollisionsrisiko besser platziert werden.

  • Textdarstellung: setzt den Standardwert für die Darstellung von Beschriftungen beim Export der Kartenansicht oder eines Druck-Layouts als PDF oder SVG. Wenn Beschriftungen immer als Text darstellen ausgewählt ist, können Beschriftungen in externen Anwendungen (z.B. Inkscape) als normaler Text bearbeitet werden. Der Nebeneffekt ist jedoch, dass die Darstellungsqualität sinkt und es Probleme beim Rendern gibt, wenn bestimmte Texteinstellungen wie Puffer vorhanden sind. Deshalb wird Beschriftungen immer als Pfade darstellen (empfohlen) empfohlen, das Beschriftungen als Umrisse exportiert.

  • checkbox Abgeschnittene Beschriftungen am Kartenrand erlauben: steuert, ob Beschriftungen, die teilweise außerhalb der Kartenausdehnung liegen, dargestellt werden sollen. Wenn diese Option aktiviert ist, werden diese Beschriftungen angezeigt (wenn es keine Möglichkeit gibt, sie vollständig innerhalb des sichtbaren Bereichs zu platzieren). Wenn sie nicht markiert ist, werden teilweise sichtbare Beschriftungen übersprungen. Beachten Sie, dass diese Einstellung keine Auswirkungen auf die Darstellung der Beschriftungen in einem Druck-Layout hat.

  • unchecked Alle Beschriftungen aller Layer anzeigen (d.h. einschließlich Kollisionen). Beachten Sie, dass diese Option auch pro Layer gesetzt werden kann (siehe Darstellungs-Reiter)

  • unchecked :guilabel:` Nicht plazierbare Beschriftungen anzeigen`: ermöglicht es, festzustellen, ob wichtige Beschriftungen in den Maps fehlen (z.B. aufgrund von Überlappungen oder anderen Einschränkungen). Sie werden in einer einstellbaren Farbe angezeigt.

  • unchecked Kandidaten anzeigen (zur Fehlersuche): steuert, ob Kästchen auf der Karte gezeichnet werden sollen, die alle für die Platzierung der Beschriftung generierten Kandidaten anzeigen. Wie die Bezeichnung schon sagt, ist dies nur zur Fehlersuche und zum Testen der Auswirkungen verschiedener Beschriftungseinstellungen nützlich. Dies könnte für eine bessere manuelle Platzierung mit Werkzeugen aus der Etiketten-Symbolleiste nützlich sein.

  • Projektbeschriftungsversion: QGIS unterstützt zwei verschiedene Versionen der automatischen Platzierung von Labels:

    • Version 1: das alte System (verwendet von QGIS-Versionen 3.10 und früher, und beim Öffnen von Projekten, die in diesen Versionen erstellt wurden, in QGIS 3.12 oder später). In Version 1 werden Beschriftungs- und Hindernisprioritäten nur als „grobe Richtwerte“ behandelt, und es ist möglich, dass in dieser Version eine Beschriftung mit niedriger Priorität über ein Hindernis mit hoher Priorität gelegt wird. Dementsprechend kann es schwierig sein, die gewünschten Beschriftungsergebnisse zu erzielen, wenn diese Version verwendet wird, und sie wird daher nur für die Kompatibilität mit älteren Projekten empfohlen.

    • Version 2 (empfohlen): dies ist das Standardsystem in neuen Projekten, die in QGIS 3.12 oder später erstellt wurden. In Version 2 wurde die Logik, die vorgibt, wann Beschriftungen Hindernisse überlappen dürfen, überarbeitet. Die neue Logik verbietet es, dass sich Labels mit Hindernissen überlappen, die eine höhere Gewichtung als die Priorität des Labels haben. Als Ergebnis führt diese Version zu viel vorhersehbareren und leichter verständlichen Beschriftungsergebnissen.

16.1.4.2. Regelbasierte Beschriftung

Bei der regelbasierten Beschriftung können mehrere Beschriftungskonfigurationen definiert und selektiv auf der Grundlage von Ausdrucksfiltern und Skalenbereichen angewendet werden, wie bei der Regelbasierten Darstellung von Symbolen.

So erstellen Sie eine Regel:

  1. Wählen Sie die Option labelingRuleBased Regelbasierte Beschriftung in der Haupt-Dropdown-Liste auf der Registerkarte Beschriftungen

  2. Klicken Sie auf die Schaltfläche symbologyAdd Regel hinzufügen am unteren Rand des Dialogs.

  3. Füllen Sie den neuen Dialog mit:

    • Beschreibung: ein Text, der zur Identifizierung der Regel auf der Registerkarte Beschriftungen und als Beschriftungseintrag in der Druck-Layoutlegende verwendet wird.

    • Filter: ein Ausdruck zur Auswahl der Objekte, auf die die Beschriftungseinstellungen angewendet werden sollen

    • Wenn bereits Regeln festgelegt sind, kann die Option Else verwendet werden, um alle Objekte auszuwählen, die keinem Filter der Regeln in derselben Gruppe entsprechen.

  4. Sie können einen Maßstabsbereich festlegen, in dem die Etikettenregel angewendet werden soll.

  5. Die im Bereich Beschriftungen verfügbaren Optionen sind die üblichen Beschriftungseinstellungen. Konfigurieren Sie sie und drücken Sie OK.

    ../../../_images/label_rule_settings.png

    Abb. 16.28 Regeleigenschaften

Eine Zusammenfassung der vorhandenen Regeln wird im Hauptdialog angezeigt (siehe Abb. 16.29). Sie können mehrere Regeln hinzufügen, neu anordnen oder per Drag-and-Drop verschmelzen. Sie können sie auch mit der Schaltfläche symbologyRemove entfernen oder mit der Schaltfläche symbologyEdit oder einem Doppelklick bearbeiten.

../../../_images/label_rules_panel.png

Abb. 16.29 Regelbasierte Beschriftung Bedienfelder

16.1.4.3. Ausdrucksbasierte Beschriftungen definieren

Unabhängig davon, ob Sie einen einzelnen oder einen regelbasierten Beschriftungstyp wählen, erlaubt QGIS die Verwendung von Ausdrücken zur Beschriftung von Objekten.

Angenommen, Sie verwenden die Methode Einzelne Beschriftung, dann klicken Sie auf die Schaltfläche |Ausdruck| neben der Dropdown-Liste Wert in der Registerkarte labelingSingle Beschriftungen des Layereigenschaften-Dialogs.

In Abb. 16.30 sehen Sie einen Beispielausdruck, um den Layer Alaska-Bäume mit Baumart und Fläche zu beschriften, basierend auf dem Feld ‚VEGDESC‘, etwas beschreibendem Text und der Funktion $area in Kombination mit format_number(), um den Zahlenwert zu verdeutlichen.

../../../_images/label_expression.png

Abb. 16.30 Ausdrücke für das Beschriften verwenden

Die ausdrucksbasierte Beschriftung ist einfach zu handhaben. Alles, worauf Sie achten müssen, ist folgendes:

  • Möglicherweise müssen Sie alle Elemente (Strings, Felder und Funktionen) mit einer String-Verkettungsfunktion wie concat, + oder || kombinieren. Seien Sie sich bewusst, dass in manchen Situationen (wenn Null oder numerische Werte involviert sind) nicht alle dieser Werkzeuge Ihren Bedürfnissen entsprechen werden.

  • Zeichenketten werden in ‚einfache Anführungszeichen‘ geschrieben.

  • Felder werden in „doppelten Anführungszeichen“ oder ohne Anführungszeichen geschrieben.

Schauen wir uns einige Beispiele an:

  1. Etikett basierend auf zwei Feldern ‚name‘ und ‚place‘ mit einem Komma als Trennzeichen:

    "name" || ', ' || "place"
    

    Liefert:

    John Smith, Paris
    
  2. Beschriftung basierend auf zwei Feldern ‚name‘ und ‚place‘ mit anderen Texten:

    'My name is ' + "name" + 'and I live in ' + "place"
    'My name is ' || "name" || 'and I live in ' || "place"
    concat('My name is ', name, ' and I live in ', "place")
    

    Liefert:

    My name is John Smith and I live in Paris
    
  3. Beschriftung auf der Grundlage von zwei Feldern ‚name‘ und ‚place‘ mit anderen Texten, die verschiedene Verkettungsfunktionen kombinieren:

    concat('My name is ', name, ' and I live in ' || place)
    

    Liefert:

    My name is John Smith and I live in Paris
    

    Oder, wenn das Feld ‚place‘ NULL ist, wird zurückgegeben:

    My name is John Smith
    
  4. Mehrzeilige Beschriftung basierend auf zwei Feldern ‚name‘ und ‚place‘ mit einem beschreibenden Text:

    concat('My name is ', "name", '\n' , 'I live in ' , "place")
    

    Liefert:

    My name is John Smith
    I live in Paris
    
  5. Etikett, das auf einem Feld und der Funktion $area basiert, um den Namen des Ortes und seine gerundete Flächengröße in einer umgerechneten Einheit anzuzeigen:

    'The area of ' || "place" || ' has a size of '
    || round($area/10000) || ' ha'
    

    Liefert:

    The area of Paris has a size of 10500 ha
    
  6. Erstellen Sie eine CASE ELSE-Bedingung. Wenn der Bevölkerungswert im Feld population <= 50000 ist, handelt es sich um einen Ort, andernfalls um eine Stadt:

    concat('This place is a ',
    CASE WHEN "population" <= 50000 THEN 'town' ELSE 'city' END)
    

    Liefert:

    This place is a town
    
  7. Anzeigename für die Städte und keine Beschriftung für die anderen Objekte (für den Kontext „city“, siehe Beispiel oben):

    CASE WHEN "population" > 50000 THEN "NAME" END
    

    Liefert:

    Paris
    

Wie Sie im Ausdruckeditor sehen können stehen Ihnen hunderte von Funktionen zur Verfügung um einfache und sehr komplexe Ausdrücke zumBeschriften Ihrer Daten in QGIS zu erstellen. Siehe das Ausdrücke Kapitel für weitere Informationen und ein Beispiel zu Ausdrücken.

16.1.4.4. Datendefinierte Übersteuerung für das Beschriften

Mit der Funktion dataDefine Datendefinierte Übersteuerung werden die Einstellungen für die Beschriftung durch Einträge in der Attributtabelle oder darauf basierende Ausdrücke überschrieben. Mit diesem Objekt lassen sich Werte für die meisten der oben beschriebenen Beschriftungsoptionen setzen.

Nehmen wir zum Beispiel den QGIS-Beispieldatensatz Alaska und beschriften den Layer airports mit dem Namen, basierend auf ihrem militärischen USE, d.h. ob der Flughafen für:

  • Militär, dann in grauer Farbe, Größe 8 anzeigen;

  • andere, dann in blauer Farbe, Größe 10 anzeigen.

Um dies zu tun, müssen Sie die Beschriftung im Feld NAME des Layers aktivieren (siehe Einrichten einer Beschriftung):

  1. Aktivieren Sie die Registerkarte Text.

  2. Klicken Sie auf das Symbol dataDefine neben der Eigenschaft Größe.

  3. Wählen Sie Bearbeiten… und geben Sie ein:

    CASE
      WHEN "USE" like '%Military%' THEN 8 -- because compatible values are 'Military'
                                          -- and 'Joint Military/Civilian'
      ELSE 10
    END
    
  4. Drücken Sie OK, um zu bestätigen. Der Dialog wird geschlossen und die Schaltfläche dataDefine wird zu dataDefineExpressionOn, was bedeutet, dass eine Regel ausgeführt wird.

  5. Klicken Sie dann auf die Schaltfläche neben der Eigenschaft Farbe, geben Sie den folgenden Ausdruck ein und bestätigen Sie:

    CASE
      WHEN "USE" like '%Military%' THEN '150, 150, 150'
      ELSE '0, 0, 255'
    END
    

Ebenso können Sie jede andere Eigenschaft des Etiketts so anpassen, wie Sie es wünschen. Weitere Details zur Beschreibung und Handhabung des Widgets dataDefine Datendefinierte Übersteuerung finden Sie im Abschnitt Einrichten von datendefinierter Übersteuerung.

../../../_images/label_attribute_data_defined.png

Abb. 16.31 Die Beschriftungen der Flughäfen werden auf der Grundlage ihrer Attribute formatiert

Tipp

Verwenden Sie die datendefinierte Übersteuerung, um jedes Teil von mehrteiligen Objekten zu beschriften.

Es gibt eine Option, um die Beschriftung für mehrteilige Objekte unabhängig von Ihren Beschriftungseigenschaften festzulegen. Wählen Sie den Menüpunkt render Darstellung, Objektoptionen, gehen Sie auf die Schaltfläche dataDefine Datendefinierte Übersteuerung neben der Checkbox unchecked Alle Teile mehrteiliger Objekte beschriften und definieren Sie die Labels wie in Einrichten von datendefinierter Übersteuerung beschrieben.

Die Beschriftungswerkzeugleiste

Die Beschriftungswerkzeugleiste bietet einige Möglichkeiten zur Manipulation von labelingSingle Beschriftungen (einschließlich deren Führungslinien) oder diagram Diagram Eigenschaften:

../../../_images/diagram_toolbar.png

Abb. 16.32 Die Beschriftungswerkzeugleiste

  • showPinnedLabels Gepinnte Beschriftungen, Diagramme und Callouts hervorheben. Wenn der Vektorlayer des Objekts bearbeitbar sind, ist die Hervorhebung grün, sonst blau.

  • showUnplacedLabel Schaltet die Anzeige von nicht platzierten Beschriftungen um: Ermöglicht es, festzustellen, ob wichtige Beschriftungen in den Karten fehlen (z.B. aufgrund von Überlappungen oder anderen Einschränkungen). Sie werden mit einer anpassbaren Farbe angezeigt (siehe automatated_placement).

  • pinLabels Beschriftungen und Diagramme anpinnen/lösen. Wenn Sie einen Bereich anklicken oder ziehen, werden überlagerte Elemente angeheftet. Wenn Sie bei gedrückter Umschalt-Taste auf einen Bereich klicken oder ziehen, werden die Anheftung der Elemente aufgehoben. Schließlich können Sie auch mit Strg auf einen Bereich klicken oder ziehen, um den Anheftungsstatus umzuschalten.

  • showHideLabels Beschriftungen und Diagramme anzeigen/ausblenden. Wenn Sie auf die Elemente klicken oder einen Bereich mit Umschalt anklicken und ziehen, werden sie ausgeblendet. Wenn ein Objekt ausgeblendet ist, müssen Sie nur auf das Objekt klicken, um es wieder sichtbar zu machen. Wenn Sie einen Bereich ziehen, werden alle Elemente in diesem Bereich wiederhergestellt.

  • moveLabel Beschriftung, Diagramm oder Callout verschieben: Klicken Sie, um das Element auszuwählen, und klicken Sie, um es an die gewünschte Stelle zu verschieben. Die neuen Koordinaten werden in Hilfsfeldern gespeichert. Wenn Sie das Element mit diesem Werkzeug auswählen und die Taste Entfernen drücken, wird der gespeicherte Positionswert gelöscht.

  • rotateLabel Eine Beschriftung drehen. Klicken Sie, um das Etikett auszuwählen, und klicken Sie erneut, um die gewünschte Drehung anzuwenden. Ebenso wird der neue Winkel in einem Hilfsfeld gespeichert. Wenn Sie ein Etikett mit diesem Werkzeug auswählen und die Taste Entfernen drücken, wird der Drehwert dieses Etiketts gelöscht.

  • changeLabelProperties Beschriftungseigenschaften ändern. Es öffnet einen Dialog, um die Eigenschaften der angeklickten Beschriftung zu ändern; dies kann die Beschriftung selbst, ihre Koordinaten, Winkel, Schriftart, Größe, mehrzeilige Ausrichtung … sein, sofern diese Eigenschaft einem Feld zugeordnet wurde. Hier können Sie die Option checkbox Jeden Teil eines Objekts beschriften einstellen.

Warnung

Beschriftungswerkzeuge überschreiben aktuelle Feldwerte

Die Verwendung der Beschriftungswerkzeugleiste zur Anpassung der Beschriftung schreibt tatsächlich den neuen Wert der Eigenschaft in das zugeordnete Feld. Achten Sie daher darauf, dass Sie nicht versehentlich Daten ersetzen, die Sie später benötigen!

Bemerkung

Der Mechanismus Hilfsspeicher kann verwendet werden, um die Beschriftung (Position usw.) anzupassen, ohne die zugrunde liegende Datenquelle zu verändern.

Anpassen der Beschriftungen in der Kartenansicht

In Kombination mit der Beschriftungswerkzeugleiste hilft Ihnen die Datendefinierte Übersteuerung bei der Manipulation von Beschriftungen in der Kartenansicht (Verschieben, Bearbeiten, Drehen). Im Folgenden wird ein Beispiel beschrieben, bei dem die Funktion moveLabelBeschriftung, Diagramm oder Callout verschieben verwendet wird (siehe Abb. 16.33).

  1. Importieren Sie lakes.shp aus dem QGIS Beispieldatensatz.

  2. Doppelklicken Sie den Layer um die Layereigenschaften zu öffnen. Klicken Sie auf Beschriftungen und Platzierung. Wählen Sie radioButtonOn Abstand vom Punkt.

  3. Suchen Sie nach den Einträgen Datendefiniert. Klicken Sie auf das Symbol dataDefine, um den Feldtyp für das Feld Koordinate zu definieren. Wählen Sie xlabel für X und ylabel für Y. Die Icons sind nun gelb hervorgehoben.

    ../../../_images/label_coordinate_data_defined.png

    Abb. 16.33 Das Beschriften von Polygonlayern mit datendefinierter Übersteuerung

  4. Zoomen Sie auf einen See.

  5. Mit der Schaltfläche toggleEditing Bearbeitungsstatus umschalten den Layer editierbar machen.

  6. Klicken Sie in der Beschriftungswerkzeugleiste auf das Symbol moveLabel. Nun können Sie das Label manuell an eine andere Position verschieben (siehe Abb. 16.34). Die neue Position des Labels wird in den Spalten xlabel und ylabel der Attributtabelle gespeichert.

  7. Es ist auch möglich, eine Linie hinzuzufügen, die jeden See mit seinem verschobenen Etikett verbindet, über:

Bemerkung

Der Mechanismus Hilfsspeicher kann mit daten-definierten Eigenschaften verwendet werden, ohne dass eine editierbare Datenquelle vorhanden ist.

16.1.5. Diagrammeigenschaften

Auf dem Reiter diagram Diagramme können Sie einem Vektorlayer eine grafische Überlagerung hinzufügen (siehe Abb. 16.35).

Die aktuelle Kernimplementation von Diagrammen bietet Unterstützung von:

  • diagramNone :guilabel:`Keine Diagramme“: der Standardwert, bei dem kein Diagramm über den Objekten angezeigt wird;

  • |Kuchendiagramm, eine kreisförmige statistische Grafik, die zur Veranschaulichung numerischer Proportionen in Stücke unterteilt ist. Die Bogenlänge jeder Scheibe ist proportional zu der Menge, die sie darstellt;

  • text Textdiagramm, ein horizontal geteilter Kreis mit Statistikwerten darin;

  • histogram :guilabel:`Histogramm“, Balken unterschiedlicher Farbe für jedes Attribut, die nebeneinander angeordnet sind

  • stackedBar Gestapelte Balken, Stapelt Balken unterschiedlicher Farbe für jedes Attribut vertikal oder horizontal übereinander

In der oberen rechten Ecke der Registerkarte Diagramme bietet die Schaltfläche autoPlacementSettings Automatische Platzierungseinstellungen (auf alle Layer anwenden) die Möglichkeit, die Platzierung von Diagrammen Beschriftungen auf der Kartenansicht zu steuern.

Tipp

Schnelles Umschalten zwischen verschiedenen Diagrammtypen

Da die Einstellungen für die verschiedenen Diagrammtypen fast identisch sind, können Sie bei der Erstellung Ihres Diagramms einfach den Diagrammtyp ändern und prüfen, welcher Diagrammtyp für Ihre Daten am besten geeignet ist, ohne dass Verluste entstehen.

Für jeden Diagrammtyp sind die Eigenschaften in mehrere Registerkarten unterteilt:

16.1.5.1. Attribute

Attribute`definiert, welche Variablen in dem Diagramm gezeigt werden. Nutzen Sie den :sup:`Objekt hinzufügen Knopf um das gewünschte Feld in das ‚Zugeordnete Attribut‘ Bedienfeld zu schieben. Erzeugte Attribute mit den Ausdrücke können auch genutzt werden.

Sie können jede Zeile durch Klicken und Ziehen nach oben oder unten verschieben und so die Anzeige der Attribute sortieren. Sie können auch die Beschriftung in der Spalte „Legende“ oder die Farbe des Attributs ändern, indem Sie auf das Element doppelklicken.

Diese Bezeichnung ist der Standardtext, der in der Legende des Drucklayouts oder des Layer-Baums angezeigt wird.

../../../_images/diagram_tab.png

Abb. 16.35 Diagrammeigenschaften - Attribute-Reiter

16.1.5.2. Darstellung

Darstellung definiert, wie das Diagramm aussieht. Es bietet allgemeine Einstellungen, die nicht mit den statistischen Werten interferieren, wie z.B.:

  • die Deckkraft, die Breite und die Farbe des Umrisses der Grafik;

  • abhängig von der Art des Diagramms:

    • für Histogramm und gestapelte Balken die Breite des Balkens und den Abstand zwischen den Balken. Bei gestapelten Balken können Sie den Abstand auf 0 setzen. Außerdem kann das Achsenliniensymbol in der Kartenansicht sichtbar gemacht und mit Liniensymboleigenschaften angepasst werden.

    • für Textdiagramme, die Hintergrundfarbe des Kreises und die für Texte verwendete Schriftart;

    • bei Kreisdiagrammen den Startwinkel der ersten Scheibe und ihre Richtung (im Uhrzeigersinn oder nicht).

  • die Verwendung von :ref:Zeicheneffekten <draw_effects> auf die Grafik.

Auf dieser Registerkarte können Sie auch die Sichtbarkeit des Diagramms mit verschiedenen Optionen verwalten und feineinstellen:

  • Diagramm Z-index: steuert, wie die Diagramme übereinander und über die Beschriftungen gezeichnet werden. Ein Diagramm mit einem hohen Index wird über Diagramme und Beschriftungen gezeichnet;

  • checkbox Alle Diagramme anzeigen: zeigt alle Diagramme an, auch wenn sie sich überschneiden;

  • Diagramm anzeigen: erlaubt es, nur bestimmte Diagramme darzustellen;

  • Immer anzeigen: wählt bestimmte Diagramme aus, die immer angezeigt werden, auch wenn sie andere Diagramme oder Kartenbeschriftungen überlappen;

  • Einstellen der Maßstabsabhängigen Sichtbarkeit;

../../../_images/diagram_tab_appearance.png

Abb. 16.36 Diagrammeigenschaften - Darstellung-Reiter

16.1.5.3. Größe

Größe ist die wichtigste Registerkarte, auf der Sie festlegen, wie die ausgewählten Statistiken abgebildet werden. Die Diagrammgröße Einheit kann ‚Millimeter‘, ‚Punkte‘, ‚Pixel‘, ‚Karteneinheiten‘ oder ‚Zoll‘ sein. Sie können verwenden:

  • Feste Größe, eine eindeutige Größe zur Darstellung der Grafik aller Objekte (nicht verfügbar für Histogramme)

  • oder Skalierte Größe, auf der Grundlage eines Ausdrucks mit Layer-Attributen:

    1. In Attribut ein Feld auswählen oder einen Ausdruck erstellen

    2. Drücken Sie Suchen, um den Maximalwert des Attributs zu ermitteln oder geben Sie einen eigenen Wert in das Widget ein.

    3. Für Histogramm und gestapelte Balken geben Sie einen Balkenlänge-Wert ein, der den Maximalwert der Attribute darstellt. Für jedes Objekt wird die Balkenlänge dann linear skaliert, um diese Übereinstimmung zu erhalten.

    4. Für Kreisdiagramme und Textdiagramme geben Sie einen Größe-Wert ein, der den Maximalwert der Attribute darstellt. Für jedes Objekt wird dann die Kreisfläche oder der Durchmesser linear skaliert, um diese Übereinstimmung zu erhalten (von 0). Ein Minimalgröße kann jedoch für kleine Diagramme gesetzt werden.

../../../_images/diagram_tab_size.png

Abb. 16.37 Diagrammeigenschaften - Größe-Reiter

16.1.5.4. Platzierung

Platzierung definiert die Position des Diagramms. Je nach Art der Layer-Geometrie bietet es verschiedene Optionen für die Platzierung (mehr Details unter Platzierung):

  • Um Punkt oder Über Punkt für Punktgeometrie. Die erste Variable erfordert einen Radius, dem sie folgen muss.

  • Um Linie oder Über Linie für Liniengeometrie. Wie bei Punktobjekten erfordert die erste Variable einen Abstand, der eingehalten werden muss, und Sie können die Platzierung des Diagramms relativ zum Objekt festlegen (‚über‘, ‚auf‘ und/oder ‚unter‘ der Linie). Es ist möglich, mehrere Optionen auf einmal zu wählen. In diesem Fall sucht QGIS nach der optimalen Position für das Diagramm. Denken Sie daran, dass Sie auch die Linienausrichtung für die Position des Diagramms verwenden können.

  • Um Zentroid, Über Zentroid, Nach Umfang und In Polygon sind die Optionen für Polygonobjekte, jeweils in einer bestimmten Entfernung.

Der Bereich Koordinaten ermöglicht die direkte Steuerung der Diagrammplatzierung für jedes einzelne Objekt, indem Attribute oder ein Ausdruck verwendet werden, um die Koordinaten X und Y zu setzen. Die Informationen können auch mit dem Werkzeug Beschriftungen und Diagramme verschieben gefüllt werden.

Im Bereich Priorität können Sie den Rang der Platzierungspriorität jedes Diagramms festlegen, d.h. wenn es verschiedene Diagramme oder Etiketten gibt, die für denselben Ort infrage kommen, wird das Element mit der höheren Priorität angezeigt und die anderen können ausgelassen werden.

Möglichst keine Objekte durch Diagramme und Beschriftungen verdecken definiert Objekte, die als Hindernisse verwendet werden sollen, d.h. QGIS wird versuchen, weder Diagramme noch Labels über diesen Objekten zu platzieren. Der Prioritätsrang wird dann verwendet, um zu bewerten, ob ein Diagramm aufgrund eines höher gewichteten Objekts ausgelassen werden kann.

../../../_images/diagram_tab_placement.png

Abb. 16.38 Diagrammeigenschaften - Reiter Platzierung

16.1.5.5. Optionen

Der Reiter Optionen enthält Einstellungen für Histogramme und gestapelte Balken. Sie können wählen, ob die Balkenorientierung Auf, Ab, Rechts oder Links, für horizontale und vertikale Diagramme sein soll.

16.1.5.6. Legende

Auf dem Reiter Legende können Sie wählen, ob Elemente des Diagramms im Layer-Bedienfeld und in der Legende eines Drucklayouts neben der Layer-Symbolik angezeigt werden sollen:

  • Aktivieren Sie Legendeneinträge für Diagrammattribute anzeigen, um in den Legenden die Eigenschaften Farbe und Legende anzuzeigen, die zuvor auf der Registerkarte Attribute zugewiesen wurden;

  • und wenn eine Skalierte Größe für die Diagramme verwendet wird, drücken Sie die Schaltfläche Legendeneinträge für Diagrammgröße…, um den Diagrammsymbolaspekt in den Legenden zu konfigurieren. Dies öffnet den Dialog datendefiniert Legendengröße, dessen Optionen in Datendefinierte Legendengröße beschrieben sind.

Wenn diese Option aktiviert ist, werden die Elemente der Diagrammlegende (Attribute mit Farbe und Diagrammgröße) auch in der Legende des Drucklayouts angezeigt, und zwar neben der Layer-Symbolik.

16.1.6. Eigenschaften Masken

Die Registerkarte labelmask Masken hilft Ihnen bei der Konfiguration der Überlagerung von Symbolen des aktuellen Layers mit anderen Symbolebenen oder Beschriftungen eines beliebigen Layers. Dies soll die Lesbarkeit von Symbolen und Beschriftungen verbessern, deren Farben nahe beieinander liegen und bei Überlagerungen schwer zu entziffern sind; es fügt eine benutzerdefinierte und transparente Maske um die Elemente hinzu, um Teile der Symbolebenen des aktuellen Layers zu „verstecken“.

Um Masken auf den aktiven Layer anzuwenden, müssen Sie zunächst im Projekt entweder Masken im Symbol-Layer oder Masken in den Beschriftungseinstellungen aktivieren. Aktivieren Sie dann auf der Registerkarte Masken:

  • Maskierter Symbollayer: listet in einer Baumstruktur alle Symbolebenen des aktuellen Layers auf. Dort können Sie das Element der Symbolebene auswählen, das Sie transparent „ausschneiden“ möchten, wenn es die ausgewählten Maskenquellen überlappt

  • Maskenquelle: listet alle im Projekt definierten Maskenetiketten und Layer für Maskensymbole auf. Wählen Sie die Elemente aus, die die Maske über den ausgewählten maskierten Symbol Layern erzeugen würden.

../../../_images/masks_properties.png

Abb. 16.39 Diagrammeigenschaften - Masken-Reiter

16.1.7. 3D-Ansicht Eigenschaften

Die Registerkarte 3d 3D-Ansicht bietet Einstellungen für Vektorlayer, die der 3D Kartenansicht dargestellt werden sollen.

Um einen Layer in 3D anzuzeigen, wählen Sie in der Combobox oben auf der Registerkarte entweder

  • Einzel-Symbol: Objekte werden mit einem gemeinsamen 3D-Symbol gerendert, dessen Eigenschaften datendefiniert für jeden Layer-Geometrietyp.

  • Regelbasierend: es können mehrere Symbolkonfigurationen definiert und selektiv auf der Grundlage von Ausdrucksfiltern und Skalenbereichen angewendet werden. Weitere Details zur Vorgehensweise unter Regelbasiertes Rendering.

../../../_images/3d_view_properties.png

Abb. 16.40 3D-Eigenschaften eines Punkt-Layers

Achtung

Ziehen Sie für Symbolhöhen- und Geländeeinstellungen die Höhe Registerkarte vor

Die Höhen- und höhenbezogenen Eigenschaften von Objekten (Höhenbegrenzung, Höhenbindung, Extrudierung oder Höhe) in der Registerkarte 3D-Ansicht erben ihre Standardwerte von den Höheneigenschaften des Layers und sollten vorzugsweise in der Registerkarte Höhe eingestellt werden.

Um die Leistung zu verbessern, werden die Daten aus den Vector Layern im Hintergrund unter Verwendung von Multithreading geladen und in Kacheln gerendert, deren Größe im Bereich Layerdarstellung, unten auf der Registerkarte, gesteuert werden kann:

  • Zoomstufenanzahl: bestimmt, wie tief der Quadtree sein wird. Eine Zoomstufe bedeutet zum Beispiel, dass der gesamte Layer aus einer einzigen Kachel besteht. Drei Zoomstufen bedeuten, dass es 16 Kacheln auf der Blattebene gibt (jede weitere Zoomstufe multipliziert diese Zahl mit 4). Die Voreinstellung ist 3 und das Maximum ist 8.

  • checkbox Boundingboxes der Kacheln anzeigen: besonders nützlich, wenn es Probleme mit Kacheln gibt, die nicht angezeigt werden, wenn sie sollten.

16.1.8. Eigenschaften Felder

Auf der Registerkarte sourceFields Felder finden Sie Informationen zu Feldern, die mit dem Layer zusammenhängen, und können sie organisieren.

Der Layer kann mit der Schaltfläche toggleEditing Bearbeitungsmodus umschalten editierbar gemacht werden. In diesem Moment können Sie seine Struktur mit den Schaltflächen newAttribute Neues Feld und deleteAttribute Feld löschen ändern.

Wenn ein newAttribute Neues Feld hinzugefügt wird, ist die Option Kommentar nur für Datenquellen verfügbar, die die Bearbeitung von Kommentaren erlauben (siehe Datenbankeinträge für weitere Details). Sie können auch Aliase im Dialog Feld hinzufügen für unterstützte OGR-Formate (GeoPackage und ESRI File Geodatabase) setzen.

../../../_images/add_field_comments_aliases.png

Abb. 16.41 Dialog Feld hinzufügen

Sie können Felder auch umbenennen, indem Sie auf ihren Namen doppelklicken. Dies wird nur für Datenanbieter wie PostgreSQL, Oracle, Memory Layer und einige GDAL Layer je nach GDAL Version unterstützt.

Wenn in der zugrunde liegenden Datenquelle oder in den Formulareigenschaften festgelegt, wird auch der Alias des Feldes angezeigt. Ein Alias ist ein von Menschen lesbarer Feldname, den Sie im Objektformular oder in der Attributtabelle verwenden können. Aliasnamen werden in der Projektdatei gespeichert.

Neben den im Datensatz enthaltenen Feldern, einschließlich virtueller Felder und Zusatzspeicher, werden auf der Registerkarte Felder auch Felder aus allen verknüpften Layern aufgeführt. Je nach Herkunft des Feldes wird eine andere Hintergrundfarbe verwendet.

Für jedes aufgelistete Feld listet das Dialogfeld auch schreibgeschützte Eigenschaften wie Typ, Typname, Länge und Genauigkeit` auf.

Je nach Datenanbieter können Sie einem Feld einen Kommentar zuordnen, z. B. bei seiner Erstellung. Diese Information wird abgerufen und in der Spalte Kommentar angezeigt und wird später angezeigt, wenn der Mauszeiger über die Feldbeschriftung in einem Objektformular bewegt wird.

In der Spalte Konfiguration können Sie festlegen, wie sich das Feld unter bestimmten Umständen verhalten soll:

  • Nicht durchsuchbar: aktivieren Sie diese Option, wenn Sie nicht möchten, dass dieses Feld von der Suchleiste abgefragt wird.

  • Nicht via WMS offenlegen: Aktivieren Sie diese Option, wenn Sie dieses Feld nicht anzeigen möchten, wenn der Layer als WMS vom QGIS-Server bereitgestellt wird

  • Nicht via WFS offenlegen: Aktivieren Sie diese Option, wenn Sie dieses Feld nicht anzeigen möchten, wenn der Layer als WFS vom QGIS-Server bereitgestellt wird

../../../_images/fields_properties.png

Abb. 16.42 Layereigenschaften - Felder Reiter

16.1.9. Attributformular

Die Registerkarte formView Attributformular hilft Ihnen, das Formular einzurichten, das beim Erstellen neuer Objekte oder beim Abfragen bestehender Objekte angezeigt wird. Sie können definieren:

  • Aussehen und Funktionsweise für jedes Feld im Eingabeformular oder in der Attributtabelle (Beschriftung, Funktion, Beschränkungen …);

  • die Struktur des Formulars (benutzerdefiniert oder automatisch generiert):

  • zusätzliche Logik in Python für die Interaktion mit dem Formular oder den Feldelementen.

Oben rechts im Dialog können Sie einstellen, ob das Formular bei der Erstellung neuer Features standardmäßig geöffnet wird. Dies kann pro Ebene oder global mit der Option Attributformular-Popup nach Feature-Erstellung unterdrücken im Menü Einstellungen ► Optionen ► Digitalisieren konfiguriert werden.

16.1.9.1. Anpassen eines Formulars für Ihre Daten

Standardmäßig zeigt QGIS ein einfaches Formular mit vordefinierten Widgets (in der Regel Spinboxen und Textboxen — jedes Feld wird in einer eigenen Zeile durch seine Beschriftung neben dem Widget dargestellt) an, wenn Sie auf ein Objekt mit dem Werkzeug identify Objekte abfragen klicken oder die Attributtabelle in den Formularansicht-Modus schalten. Wenn Verknüpfungen auf dem Layer gesetzt sind, werden Felder aus den referenzierenden Layern in einem eingebetteten Rahmen am unteren Rand des Formulars angezeigt, der der gleichen Grundstruktur folgt.

Diese Darstellung ist das Ergebnis des Standardwertes Automatisch erzeugen. Für diesen Eigenschaftsreiter stehen insgesamt drei verschiedene Werte zur Verfügung:

  • Automatisch erzeugen: behält die Grundstruktur „eine Zeile - ein Feld“ für das Formular bei, ermöglicht aber die Anpassung jedes entsprechenden Widgets.

  • Mit Drag-and-drop zusammenstellen: Neben der Anpassung von Widgets kann die Formularstruktur komplexer gestaltet werden, z. B. mit Widgets, die in Gruppen und Registerkarten eingebettet sind.

  • UI-Datei verwenden: erlaubt es, eine Qt-Designer-Datei, also eine potentiell komplexere und voll ausgestattete Vorlage, als Objekt-Form zu verwenden.

Das automatisch erzeugte Formular

Wenn die Option Automatisch erzeugen aktiviert ist, zeigt das Bedienfeld Verfügbare Elemente eine Liste von Feldern (aus dem Layer und seinen Beziehungen), die im Formular angezeigt werden würden. Wählen Sie ein Feld aus und Sie können sein Aussehen und Verhalten im rechten Bedienfeld konfigurieren:

Der Drag-and-drop-Designer

Mit dem Drag-and-Drop-Designer können Sie ein Formular mit mehreren Containern (Registerkarten oder Gruppen) erstellen, um die Attributfelder oder andere Widgets darzustellen, die nicht direkt mit einem bestimmten Feld verknüpft sind (wie die HTML/QML-Widgets oder die für den Layer definierten Aktionen), wie z. B. in Abb. 16.43 gezeigt.

../../../_images/resulting_feature_form.png

Abb. 16.43 Das Ergebnis eines integrierten Formulars mit Reitern und benannten Gruppen

  1. Wählen Sie aus der Combobox die Option Mit Drag and Drop zusammenstellen. Dies aktiviert das Bedienfeld Formularlayout neben dem Bedienfeld Verfügbare Elemente, das mit vorhandenen Feldern gefüllt ist. Das ausgewählte Feld zeigt seine Eigenschaften in einem dritten Bedienfeld an.

  2. Markieren Sie die Felder, die Sie nicht in Ihrem Formularlayout Bedienfeld verwenden möchten, und drücken Sie die Schaltfläche symbologyRemove, um sie zu entfernen. Sie können die Auswahl auch mit der Schaltfläche invertSelection Auswahl umkehren umschalten.

  3. Ziehen Sie Felder aus dem ersten Bedienfeld in das Bedienfeld Formularlayout, um sie erneut hinzuzufügen. Dasselbe Feld kann mehrfach hinzugefügt werden.

  4. Durch Ziehen und Ablegen von Feldern im Bedienfeld Formularlayout können Sie deren Position ändern.

  5. Fügen Sie Behältnisse hinzu, um Felder, die zur gleichen Kategorie gehören, zu verknüpfen und das Formular besser zu strukturieren.

    1. Der erste Schritt ist die Verwendung des Symbols symbologyAdd Fügt einen neuen Reiter oder eine Gruppe zum Formularlayout hinzu. Darin werden Felder und andere Gruppen angezeigt.

    2. Legen Sie dann die Eigenschaften des Behältnisses fest, d. h:

      • Beschriftung: der Titel, der für das Behältnis verwendet werden soll

      • Behältertyp: Das kann ein Reiter, ein Gruppenrahmen (ein zusammenklappbarer Eintrag innerhalb eines Tabs oder einer anderen Gruppe) oder eine Zeile (ein Containertyp, mit dem Sie Ihre Widgets in einer horizontalen Reihe anordnen können, wobei die Anzahl der Spalten automatisch auf der Grundlage der Anzahl der Widgets bestimmt wird) sein,

      • Within: Mit dieser Option können Sie ein bestehendes Behältnis auswählen, in den das neue Behältnis (Gruppenrahmen oder Zeile) eingebettet werden soll.

      • Spaltenanzahl über die die eingebetteten Felder verteilt werden sollen

      ../../../_images/attribute_editor_layout.png

      Abb. 16.44 Dialog zum Erstellen von Containern auf dem Attributformular-Reiter

      Diese und andere Eigenschaften können später aktualisiert werden, indem das Element im Bereich Formularlayout ausgewählt wird; Sie können dann:

      • die Beschriftung des Behältnisses ein- oder ausblenden

      • das Behältnis umbenennen

      • die Anzahl der Spalten festlegen

      • geben Sie einen Ausdruck ein, um die Sichtbarkeit des Containers zu steuern. Der Ausdruck wird jedes Mal neu ausgewertet, wenn sich die Werte im Formular ändern, und die Registerkarte oder das Gruppenfeld entsprechend angezeigt/ausgeblendet

      • checkbox Als Gruppenfeld anzeigen: wandelt einen Tabulator in ein Gruppenfeld der obersten Ebene um und umgekehrt

      • im Falle eines Gruppenrahmens, legen Sie fest, ob er beim Öffnen des Formulars als Eingeklappt für alle Objekte angezeigt werden soll, oder nur für diejenigen, die einem Ausdruck entsprechen (Bearbeitungselement eingeklappt nach Ausdruck).

      • den Stil des Behälters konfigurieren, mit benutzerdefinierten Hintergrundfarbe, Etikettenfarbe und Schrifteigenschaften

    3. Sie können beliebig viele Container erstellen und einbetten, indem Sie erneut auf das Symbol symbologyAdd Fügt einen Reiter oder eine Gruppe zum Formularlayout hinzu drücken.

  6. Im nächsten Schritt werden die entsprechenden Felder durch einfaches Ziehen und Ablegen den einzelnen Containern zugewiesen. Auf die gleiche Weise können auch Gruppenrahmen und Registerkarten verschoben werden.

  7. Anpassen des Widgets der verwendeten Felder

  8. Falls der Layer in eine Eins-zu-viele- oder viele-zu-viele-Beziehung eingebunden ist, ziehen Sie den Namen der Beziehung aus dem Bedienfeld Verfügbare Elemente auf das Bedienfeld Formularlayout. Das zugehörige Layer-Attribut-Formular wird an der gewählten Stelle in das Formular des aktuellen Layers eingebettet. Wie bei den anderen Elementen wählen Sie das Beziehungsetikett, um einige Eigenschaften zu konfigurieren:

    • das Beziehungsetikett ein- oder ausblenden

    • den Link-Button anzeigen

    • den Unlink-Button anzeigen

  9. Falls der Layer eine oder mehrere Aktionen für den Bereich Layer oder Feature aktiviert hat, werden diese unter Aktionen aufgelistet und können wie bei den anderen Feldern per Drag and Drop eingefügt werden. Die zugehörige Aktion wird an der gewählten Stelle im Formular des aktuellen Layers eingebettet.

  10. Weitere Anpassungen des Formulars durch Hinzufügen eines oder mehrerer Elemente aus Andere Bedienelemente (siehe Andere Bedienelemente)

  11. Anwenden des Dialogs für die Eigenschaften des Layers

  12. Öffnen Sie ein Formular für Objektattribute (z. B. mit dem Werkzeug identify Objekte abfragen) und das neue Formular sollte angezeigt werden.

Andere Bedienelemente

Der Drag-and-Drop-Designer bietet eine Reihe von Werkzeugen, die nicht mit einem bestimmten Feld verbunden sind. Sie können verwendet werden, um das Aussehen des Formulars zu verbessern oder um dynamisch berechnete Werte anzuzeigen.

  • HTML Widget: bettet eine HTML-Seite ein, die HTML-Quelle kann das Ergebnis von dynamisch berechneten Ausdrücken enthalten.

    HTML-Bedienelement können zum Beispiel verwendet werden, um Bilder anzuzeigen, die als BLOB in einem Feld gespeichert sind (nennen wir es Foto):

    1. Fügen Sie im Drag-and-drop Designer-Modus ein HTML Widget zu Ihrem Formularlayout hinzu.

    2. Doppelklicken Sie auf das HTML-Bedienelement, um es zu konfigurieren.

    3. Ändern Sie den standardmäßigen Title oder blenden Sie es aus.

    4. Drücken Sie die Taste expression und geben Sie den folgenden QGIS-Ausdruck ein:

      '<img src= "data:image/png;base64,' || to_base64("photo") || '">'
      

      Stellen Sie sicher, dass Sie photo durch Ihren eigenen BLOB-Feldnamen ersetzen. Der obige Ausdruck erzeugt eine Zeichenkette mit HTML-Bild-Tag, in der die BLOB-Datei kodiert ist.

    5. Übernehmen Sie den Dialog und drücken Sie dann die Schaltfläche symbologyAdd.

    6. QGIS wendet automatisch HTML-Formatierung und Funktionen an, um Ihren Ausdruck auszuwerten, was zu folgendem Code führt:

      <script>document.write(expression.evaluate("'<img src=\"data:image/png;base64,' || to_base64(\"photo\") || '\">'"));</script>
      

      Auf der rechten Seite wird eine Vorschau Ihres Bildes angezeigt.

  • QML Bedienelement: bettet eine QML-Seite ein, die QML-Quelle kann das Ergebnis von dynamisch berechneten Ausdrücken enthalten.

  • Textbedienungselement: zeigt ein Textelement an, das einfache HTML-Auszeichnungen unterstützt und das Ergebnis von dynamisch berechneten Ausdrücken enthalten kann.

  • Abstandshalterbearbeitungselement: fügt ein leeres transparentes Rechteck ein, das den vertikalen Abstand zwischen zwei Widgets vergrößert.

Tipp

Dynamische Inhalte anzeigen

Die oben erwähnten Elemente (außer dem Abstandshalterbearbeitungselement) unterstützen Ausdrücke, die verwendet werden können, um Inhalte anzuzeigen, die sich dynamisch ändern, wenn sich ein anderes Feld im Formular ändert. Dies kann erreicht werden, indem man die Funktion current_value('field_name') im Ausdruck verwendet, um den Wert eines anderen Feldes zu untersuchen.

Verwendung einer benutzerdefinierten UI-Datei

Die Option UI-Datei verwenden erlaubt es, komplexe Dialoge, die mit Qt-Designer erstellt wurden, zu verwenden. Die Verwendung einer UI-Datei erlaubt eine große Freiheit bei der Erstellung eines Dialogs. Beachten Sie, dass Sie den grafischen Objekten (Textbox, Combobox…) den gleichen Namen geben müssen, um sie mit den Feldern des Layers zu verbinden.

Verwenden Sie das Feld UI zur Bearbeitung, um den Pfad zu der zu verwendenden Datei zu definieren.

UI-Dateien können auch auf einem entfernten Server gehostet werden. In diesem Fall geben Sie die URL des Formulars anstelle des Dateipfads in UI zur Bearbeitung an.

Einige Beispiele finden Sie in der Lektion Erstellen eines neuen Formulars der QGIS Übungshandbuch. Weitergehende Informationen finden Sie unter https://woostuff.wordpress.com/2011/09/05/qgis-tips-custom-feature-forms-with-python-logic/.

Erweitern Sie Ihr Formular mit benutzerdefinierten Funktionen

QGIS-Formulare können eine Python-Funktion enthalten, die aufgerufen wird, wenn der Dialog geöffnet wird. Verwenden Sie diese Funktion, um Ihren Dialogen zusätzliche Logik hinzuzufügen. Der Formularcode kann auf drei verschiedene Arten angegeben werden:

  • Aus der Umgebung laden: verwendet eine Funktion, zum Beispiel in startup.py oder von einem installierten Plugin

  • Aus einer externen Datei laden: Sie können eine Python-Datei aus Ihrem Dateisystem auswählen oder eine URL für eine entfernte Datei eingeben.

  • Code in diesem Dialogfeld bereitstellen: es wird ein Python-Editor angezeigt, in den Sie die zu verwendende Funktion direkt eingeben können.

In allen Fällen müssen Sie den Namen der Funktion angeben, die aufgerufen werden soll (open im Beispiel unten).

Ein Beispiel ist (im Modul MyForms.py):

def open(dialog,layer,feature):
    geom = feature.geometry()
    control = dialog.findChild(QWidget,"My line edit")

Referenz in Python Init Funktion wie folgt: open

16.1.9.2. Einstellung der Feldfunktionsweisen

Der Hauptteil der Registerkarte Attributformular hilft Ihnen dabei festzulegen, wie das Ausfüllen oder Anzeigen der Werte des Feldes in der Attributtabelle oder im Feature-Formular ausgeführt wird: Sie können festlegen, wie der Benutzer mit jedem Feld interagiert und welche Werte oder Wertebereiche jeweils hinzugefügt werden dürfen.

../../../_images/edit_widgets_dialog.png

Abb. 16.45 Dialog um ein Bearbeitungselement für eine Attributspalte auszuwählen

Allgemeine Einstellungen

Unabhängig von der Art des Widgets, das auf das Feld angewendet wird, gibt es einige allgemeine Eigenschaften, die Sie einstellen können, um zu steuern, ob und wie ein Feld bearbeitet werden kann.

Bedienelementanzeige

Dieser Bereich ist nur für den Designermodus Drag and drop verfügbar und hilft Ihnen, das Aussehen des dem Feld zugewiesenen Elements zu konfigurieren:

  • Beschriftung anzeigen: gibt an, ob der Feldname im Formular angezeigt werden soll

  • Beschriftungsfarbe übersteuern: wendet eine bestimmte Farbe auf die Beschriftung des Feldes an

  • Beschriftungsschriftart übersteuern: wendet bestimmte Schrifteigenschaften (fett, kursiv, unterstrichen, durchgestrichen oder Schrift) auf die Feldbezeichnung an

  • Size: Ermöglicht die Steuerung der relativen Größenänderung von Elementen bei der Größenänderung eines Formularattributs.

    • Horizontale Dehnung: setzt einen höheren horizontalen Wert für Elemente, die mehr horizontalen Platz benötigen.

    • Vertikale Dehnung: Legt fest, wie sich die Widgets vertikal vergrößern, wenn die Größe des Formulars geändert wird.

Allgemein
  • Alias: einen menschenlesbaren Namen, der für Felder verwendet werden soll. Der Alias wird im Objektformular, in der Attributtabelle oder im Bedienfeld Identifikationsergebnisse angezeigt. Er kann auch als Feldnamenersatz im Ausdruckseditor verwendet werden, was das Verständnis und die Überprüfung von Ausdrücken erleichtert. Aliase werden in der Projektdatei gespeichert.

  • Kommentar: zeigt den Kommentar des Feldes an, wie er auf der Registerkarte :guilabel:``Felder angezeigt wird, in einem schreibgeschützten Zustand. Diese Information wird als Tooltip angezeigt, wenn der Mauszeiger über die Feldbeschriftung in einem Objektformular bewegt wird.

  • checkbox Editable: Deaktivieren Sie diese Option, um das Feld schreibgeschützt (nicht manuell änderbar) zu machen, auch wenn sich der Layer im Bearbeitungsmodus befindet. Beachten Sie, dass das Markieren dieser Einstellung keine Bearbeitungsbeschränkung des Anbieters außer Kraft setzt. Diese Option kann dank der Schaltfläche dataDefine Datendefinierte Übersteuerung durch eine daten-definierte Eigenschaft gesteuert werden.

  • checkbox Wiederverwenden des zuletzt eingegebenen Wertes: merkt sich den zuletzt in dieses Feld eingegebenen Wert und verwendet ihn als Standard für das nächste Objekt, das im Layer bearbeitet wird.

  • checkbox Beschriftung darüber: platziert den Feldnamen über oder neben dem Element im Objektformular.

Restriktionen

Sie können den Wert, der in das Feld eingefügt werden soll, einschränken. Diese Einschränkung kann sein:

  • checkbox Nicht Null: verlangt, dass der Benutzer einen Wert angibt;

  • checkbox Eindeutig: garantiert, dass der eingefügte Wert im gesamten Feld eindeutig ist;

  • basierend auf einem benutzerdefinierten Ausdruck: z.B. not regexp_match(col0,'[^A-Za-z]') stellt sicher, dass der Wert des Feldes col0 nur Buchstaben des Alphabets enthält. Eine kurze Beschreibung kann hinzugefügt werden, damit Sie sich die Einschränkung besser merken können.

Jedes Mal, wenn ein Wert in einem Feld hinzugefügt oder bearbeitet wird, wird er an die bestehenden Beschränkungen übermittelt:

  • wenn es alle Anforderungen erfüllt, wird ein grünes Häkchen neben dem Feld im Formular angezeigt;

  • Wenn es nicht alle Anforderungen erfüllt, wird das Feld gelb oder orange gefärbt und ein entsprechendes Kreuz wird neben dem Widget angezeigt. Sie können mit dem Mauszeiger über das Kreuz fahren, um sich daran zu erinnern, welche Einschränkungen auf das Feld angewendet werden, und den Wert korregieren:

    • Ein gelbes Kreuz erscheint, wenn es sich bei der nicht erfüllten Bedingung um eine nicht erzwungene Bedingung handelt (weiche Bedingung) und es Sie nicht daran hindert, die Änderungen mit den „falschen“ Werten zu speichern;

    • Ein orangefarbenes Kreuz kann nicht ignoriert werden und erlaubt es Ihnen nicht, Ihre Änderungen zu speichern, solange sie nicht den Beschränkungen entsprechen. Es erscheint, wenn die Option checkbox Beschränkung erzwingen aktiviert ist (harte Einschränkung).

Vorgaben
  • Vorgabewert: füllt bei neuen Objekten das Feld automatisch mit einem vordefinierten Wert oder einem ausdrucksbasierten Wert aus. Zum Beispiel, können Sie:

    • verwenden Sie $x, $length, $area, um automatisch ein Feld mit der X-Koordinate, der Länge, der Fläche oder anderen geometrischen Informationen des Objekts bei seiner Erstellung zu füllen;

    • ein Feld für jedes neue Objekt um 1 zu erhöhen, indem man maximum("field")+1 verwendet;

    • den Zeitpunkt der Erstellung des Objekts mit now() speichern;

    • Verwenden Sie Variable in Ausdrücken, was es einfacher macht, z.B. den Operator-Namen (@user_full_name), den Pfad der Projektdatei (@project_path), oder anderes einzufügen.

    Eine Vorschau des resultierenden Standardwerts wird am unteren Rand des Widgets angezeigt.

    Bemerkung

    Die Option Standardwert kennt die Werte in den anderen Feldern des zu erstellenden Objekts nicht, so dass es nicht möglich ist, einen Ausdruck zu verwenden, der diese Werte kombiniert, d.h. die Verwendung eines Ausdrucks wie concat( field1, field2) kann nicht funktionieren.

  • checkbox Vorgabewert bei Aktualisierung anwenden: Wenn das Objektattribut oder die Geometrie geändert wird, wird der Standardwert neu berechnet. Dies könnte praktisch sein, um Werte zu speichern, wie z. B. den letzten Benutzer, der Daten geändert hat, das letzte Mal, als sie geändert wurden…

Richtlinien

Mit Richtlinien können Sie festlegen, wie die Werte des Feldes Beim Teilen von Objekten zugewiesen werden:

  • Doppelter Wert: Behält den bestehenden Wert des Feldes für die resultierenden, geteilten Objekte bei.

  • Vorgabewert verwenden: Setzt das Feld zurück, indem sein Standardwert neu berechnet wird. Wenn keine Standardwertklausel vorhanden ist, wird der vorhandene Wert für die resultierenden geteilten Objekte beibehalten.

  • Wert entfernen: Setzt das Feld auf einen ungesetzten Zustand zurück.

  • Geometrieverhältnis verwenden: Berechnet den Feldwert für alle geteilten Teile neu, indem der vorhandene Wert mit dem Verhältnis der Längen oder Flächen der geteilten Teile multipliziert wird.

Funktionsauswahl

Basierend auf dem Feldtyp bestimmt QGIS automatisch einen Standard-Bedienelementtyp und weist ihn zu. Sie können das Element aber auch durch ein anderes ersetzen, das mit dem Feldtyp kompatibel ist. Die verfügbaren Elemente sind:

  • Binärelement (BLOB): ist nur für binäre Felder verfügbar und zeigt standardmäßig eine Beschriftung mit der Größe der eingebetteten Daten an, sofern sie nicht leer ist. Eine Dropdown-Schaltfläche neben der Beschriftung ermöglicht Folgendes:

    • Eingebettete Datei, Ersetzen oder Auffüllen des Feldes

    • Inhalt löschen, Entfernen aller Daten im Feld

    • Inhalt in Datei speichern, Export der Daten als Datei auf Festplatte

    Es ist auch möglich, eine Vorschau der eingebetteten Binärdatei im Feld zu sehen, wenn sie in einem Drag-and-Drop-Formular z.B. mit einem :ref:`QML- oder HTML-Widget <other_widgets> ` kombiniert wird.

  • Kontrollkästchen: Zeigt ein Kontrollkästchen an, dessen Zustand den einzufügenden Wert bestimmt.

  • Klassifikation: Nur verfügbar, wenn eine kategorisierte Symbologie auf den Layer angewendet wird, zeigt ein Kombinationsfeld mit den Werten der Klassen an.

  • Farbe: Zeigt ein Farb-Widget an, mit dem eine Farbe ausgewählt werden kann; der Farbwert wird als html-Notation in der Attributtabelle gespeichert.

  • Datum/Zeit: Stellt ein Linienfeld dar, das ein Kalender-Widget zum Öffnen eines Datums, einer Zeit oder beidem, darstellt. Der Spaltentyp muss Text sein. Sie können ein benutzerdefiniertes Format auswählen, einen Pop-up-Kalender, etc.

  • Aufzählung: Öffnet ein Kombinationsfeld mit vordefinierten Werten, die aus der Datenbank abgerufen werden. Dies wird derzeit nur vom PostgreSQL-Anbieter für Felder vom Typ Enum unterstützt.

  • Anhang: Verwendet einen „Datei öffnen“-Dialog, um den Dateipfad in einem relativen oder absoluten Modus zu speichern. Es kann verwendet werden, um einen Hyperlink (zum Dokumentpfad), ein Bild oder eine Webseite anzuzeigen. Der Benutzer kann auch ein externes Speichersystem zum Abrufen/Speichern von Ressourcen konfigurieren.

    Tipp

    Relativer Pfad im Anhänge-Elementtyp

    Befindet sich der mit dem Dateibrowser ausgewählte Pfad im gleichen Verzeichnis wie die .qgs-Projektdatei oder darunter, werden Pfade in relative Pfade umgewandelt. Dies erhöht die Portabilität eines .qgs-Projekts mit angehängten Multimedia-Informationen.

  • Versteckt: Ein verstecktes Attribut ist unsichtbar. Der Anwender kann den Inhalt nicht sehen.

  • Schlüssel/Wert: Zeigt eine zweispaltige Tabelle an, um Sätze von Schlüssel/Wert-Paaren in einem einzigen Feld zu speichern. Dies wird derzeit vom PostgreSQL-Anbieter für Felder vom Typ hstore unterstützt.

  • JSON-Ansicht: Zeigt JSON-Daten in einer syntaktisch hervorgehobenen Textbearbeitung oder in der Baumansicht an. Dieses Widget ist derzeit nur lesbar. Es stehen mehrere Optionen zur Verfügung, um die Art der Anzeige der Daten zu ändern. Die Option ‚Standardansicht‘ gibt an, ob das Widget im Text- oder Baummodus angezeigt werden soll. Die Option „JSON formatieren“ enthält drei Optionen, die sich nur auf die Strukturansicht beziehen:

    • Eingerückt: Anzeige der Daten in einer für den Menschen lesbaren Form mit Zeilenumbrüchen und vier Leerzeichen als Einrückung.

    • Kompakt: Daten in einer einzeiligen, optimierten Zeichenkette ohne Zeilenumbrüche und Leerzeichen anzeigen.

    • Deaktiviert: Daten so anzeigen, wie sie vom Anbieter kommen.

  • Liste: Zeigt eine einspaltige Tabelle an, um verschiedene Werte innerhalb eines einzelnen Feldes hinzuzufügen. Dies wird derzeit vom PostgreSQL-Anbieter für Felder vom Typ Array unterstützt.

  • Bereich: Erlaubt Ihnen numerische Werte eines bestimmten Wertebereichs festzulegen. Das Bearbeitungselement kann entweder ein Schieber oder ein Drehfeld sein.

  • Beziehungsreferenz: Dies ist das Standard-Widget, das dem referenzierenden Feld (d. h. dem Fremdschlüssel im untergeordneten Layer) zugewiesen wird, wenn eine Beziehung gesetzt ist. Es bietet direkten Zugriff auf das Formular des übergeordneten Objekts, das wiederum die Liste und das Formular seiner Kinder einbettet.

  • Texteditor (Standard): Öffnet ein Textbearbeitungsfeld, in dem einfacher Text oder mehrere Zeilen verwendet werden können. Wenn Sie mehrere Zeilen wählen, können Sie auch HTML-Inhalte auswählen.

  • Eindeutige Werte: Sie können einen der bereits in der Attributtabelle verwendeten Werte auswählen. Wenn „Bearbeitbar“ aktiviert ist, wird eine Eingabezeile mit Autovervollständigungsunterstützung angezeigt, andernfalls wird ein Kombinationsfeld verwendet.

  • UUID-Generator: Erzeugt ein schreibgeschütztes UUID-Feld (Universally Unique Identifiers), falls leer.

  • Werteabbildung: Ein Kombinationsfeld mit vordefinierten Elementen. Der Wert wird im Attribut gespeichert, die Beschreibung wird in der Combobox angezeigt. Sie können Werte manuell definieren oder sie aus einem Layer oder einer CSV-Datei laden.

  • Wertbeziehung: Bietet Werte aus einer Bezugstabelle in einer Combobox an. Sie können Layer, Schlüsselspalte und Wertspalte auswählen. Es stehen mehrere Optionen zur Verfügung, um das Standardverhalten zu ändern: Nullwert zulassen, nach Wert ordnen, Mehrfachauswahl zulassen und Autovervollständigung verwenden. Die Formulare zeigen entweder eine Dropdown-Liste oder ein Zeilenbearbeitungsfeld an, wenn das Kontrollkästchen für die Vervollständigung aktiviert ist.

    Wenn ein Layer, der in PostgreSQL, GeoPackage oder SpatiaLite gespeichert ist, so konfiguriert ist, dass er ein Wertebezieungs-Element verwendet, aber der benötigte Layer noch nicht im Projekt geladen ist, sucht QGIS automatisch nach dem Layer in derselben Datenbank/Verbindung.

16.1.10. Verknüpfungen

Mit der Registerkarte join Joins können Sie Objekte des aktuellen Layers mit Objekten eines anderen geladenen Vektorlayers (oder einer Tabelle) verknüpfen. Die Verknüpfung basiert auf einem Attribut, das von den Layern in einer Eins-zu-Eins-Beziehung gemeinsam genutzt wird. Für weitere Details zu Verknüpfungen lesen Sie bitte Joining features between two layers.

16.1.11. Hilfsspeicher

Der übliche Weg zur Anpassung von Styling und Beschriftung ist die Verwendung von datendefinierten Eigenschaften, wie in Einrichten von datendefinierter Übersteuerung beschrieben. Dies ist jedoch möglicherweise nicht möglich, wenn die zugrunde liegenden Daten nur gelesen werden können. Außerdem kann die Konfiguration dieser datendefinierten Eigenschaften sehr zeitaufwendig oder nicht wünschenswert sein! Wenn Sie z. B. die Kartenwerkzeuge mit Die Beschriftungswerkzeugleiste vollständig nutzen wollen, müssen Sie mehr als 20 Felder in Ihrer ursprünglichen Datenquelle hinzufügen und konfigurieren (X- und Y-Position, Drehwinkel, Schriftart, Farbe usw.).

Der Mechanismus des Hilfsspeichers bietet die Lösung für diese Einschränkungen und umständlichen Konfigurationen. Hilfsfelder sind ein Umweg, um diese datendefinierten Eigenschaften (Beschriftungen, Diagramme, Symbole…) dank editierbarer Joins automatisch in einer SQLite-Datenbank zu verwalten und zu speichern. So können Sie Eigenschaften für Layer speichern, die nicht editierbar sind.

Im Dialogfeld für die Eigenschaften von Vektorebenen gibt es eine Registerkarte zur Verwaltung des Zusatzspeichers:

../../../_images/auxiliary_storage_tab.png

Abb. 16.46 Reiter Hilfsspeicher

16.1.11.1. Beschriftung

In Anbetracht der Tatsache, dass die Datenquelle dank datendefinierter Eigenschaften angepasst werden kann, ohne editierbar zu sein, sind die in Die Beschriftungswerkzeugleiste beschriebenen Beschriftungswerkzeuge immer verfügbar, sobald die Beschriftung aktiviert ist.

Eigentlich benötigt das Hilfsspeichersystem einen Layer, um diese Eigenschaften in einer SQLite-Datenbank zu speichern (siehe Hilfsspeicher-Datenbank). Der Erstellungsprozess wird ausgeführt, wenn Sie das erste Mal auf die Karte klicken, während ein Kartenbeschriftungswerkzeug aktiviert ist. Dann wird ein Fenster angezeigt, in dem Sie den Primärschlüssel für die Verknüpfung auswählen können (um sicherzustellen, dass die Objekte eindeutig identifiziert werden):

../../../_images/auxiliary_storage_key.png

Abb. 16.47 Dialog zur Erstellung eines Hilfslayers

Sobald ein zusätzlicher Layer für die aktuelle Datenquelle konfiguriert ist, können Sie seine Informationen auf der Registerkarte abrufen:

../../../_images/auxiliary_storage_tabkey.png

Abb. 16.48 Hilfslayer-Schlüssel

Der Hilfslayer hat nun diese Eigenschaften:

  • Der Primärschlüssel ist ID,

  • es gibt 0 Objekte, die ein Hilfsfeld verwenden,

  • es gibt 0 Hilfsfelder.

Jetzt, da der Hilfslayer erstellt ist, können Sie die Beschriftungen der Layer bearbeiten. Klicken Sie auf eine Beschriftung, während das Kartenwerkzeug changeLabelProperties Beschriftungseigenschaften ändern aktiviert ist, dann können Sie Stil-Eigenschaften wie Größen, Farben usw. aktualisieren. Die entsprechenden datendefinierten Eigenschaften werden erstellt und können abgerufen werden:

../../../_images/auxiliary_storage_fields.png

Abb. 16.49 Hilfsfelder

Wie Sie in der obigen Abbildung sehen können, werden 21 Felder automatisch erstellt und für die Beschriftung konfiguriert. Der Hilfsfeldtyp FontStyle ist zum Beispiel ein String und wird in der zugrundeliegenden SQLite-Datenbank labeling_fontstyle genannt. Es gibt auch 1 Objekt, das derzeit diese Hilfsfelder verwendet.

Beachten Sie, dass das Symbol dataDefineOn auf der Registerkarte Beschriftungen angezeigt wird, was darauf hindeutet, dass die datendefinierten Überschreibungsoptionen korrekt eingestellt sind:

../../../_images/auxiliary_storage_dd.png

Abb. 16.50 Datendefinierte Eigenschaften werden automatisch erstellt

Andernfalls gibt es eine weitere Möglichkeit, ein Hilfsfeld für eine bestimmte Eigenschaft zu erstellen, und zwar über die Schaltfläche dataDefine Datendefinierte Übersteuerung. Wenn Sie auf die Schaltfläche Daten im Projekt speichern klicken, wird automatisch ein Hilfsfeld für das Feld Opazität erstellt. Wenn Sie auf diese Schaltfläche klicken und der Layer noch nicht erstellt wurde, wird zunächst ein Fenster (Abb. 16.47) angezeigt, um den Primärschlüssel für die Verknüpfung auszuwählen.

16.1.11.2. Symbolisierung

Wie die oben beschriebene Methode zur Anpassung von Beschriftungen können auch Hilfsfelder zur Gestaltung von Symbolen und Diagrammen verwendet werden. Klicken Sie dazu auf dataDefine Datendefinierte Übersteuerung und wählen Sie Daten im Projekt speichern für eine bestimmte Eigenschaft. Zum Beispiel das Feld Füllfarbe:

../../../_images/auxiliary_storage_symbol.png

Abb. 16.51 Menü der datendefinierten Eigenschaft für die Symbolisierung

Für jedes Symbol gibt es unterschiedliche Attribute (z.B. Füllstil, Füllfarbe, Strichfarbe, etc…), so dass jedes Hilfsfeld, das ein Attribut darstellt, einen eindeutigen Namen benötigt, um Konflikte zu vermeiden. Nach Auswahl von Daten im Projekt speichern öffnet sich ein Fenster, das den Typ des Feldes anzeigt und Sie auffordert, einen eindeutigen Namen für das Hilfsfeld einzugeben. Wenn Sie zum Beispiel ein Füllfarbe-Hilfsfeld erstellen, öffnet sich das folgende Fenster:

../../../_images/auxiliary_storage_symbol_name.png

Abb. 16.52 Name des Hilfsfeldes für ein Symbol

Nach der Erstellung kann das Hilfsfeld auf der Registerkarte Hilfsspeicher abgerufen werden:

../../../_images/auxiliary_storage_symbol_field.png

Abb. 16.53 Neues Hilfsfeld für das Symbol

16.1.11.3. Attributtabelle und Widgets

Hilfsfelder können über die Attributtabelle bearbeitet werden. Allerdings sind zunächst nicht alle Hilfsfelder in der Attributtabelle sichtbar.

Hilfsfelder, die Attribute der Symbologie, der Beschriftung, des Aussehens oder der Diagramme eines Layers darstellen, erscheinen automatisch in der Attributtabelle. Die Ausnahme sind Attribute, die mit der Beschriftungswerkzeugleiste geändert werden können, die standardmäßig ausgeblendet sind. Hilfsfelder, die eine Farbe darstellen, haben standardmäßig Bedienelement Farbe eingestellt, ansonsten wird für Hilfsfelder das Bedienelement Text bearbeiten verwendet.

Hilfsfelder, die Attribute darstellen, die mit der Beschriftungswerkzeugleiste geändert werden können, sind in der Attributtabelle standardmäßig versteckt. Um ein Feld sichtbar zu machen, öffnen Sie die Registerkarte Attributformular und ändern den Wert eines Hilfsfeldes Bedienelementetyp von versteckt auf einen anderen relevanten Wert. Ändern Sie zum Beispiel auxiliary_storage_labeling_size in Texteditor oder auxiliary_storage_labeling_color in das Farbe Bedienelement. Diese Felder werden nun in der Attributtabelle angezeigt.

Die Hilfsfelder in der Attributtabelle werden wie in der folgenden Abbildung dargestellt:

../../../_images/auxiliary_storage_widgets.png

Abb. 16.54 Eingabemaske mit Hilfsfeldern

16.1.11.4. Management

Mit dem Menü Hilfslayer können Sie die Hilfsfelder verwalten:

../../../_images/auxiliary_storage_actions.png

Abb. 16.55 Hilfslayer Management

Der erste Punkt Erzeugen ist in diesem Fall deaktiviert, da der zusätzliche Layer bereits erstellt wurde. Im Falle einer neuen Arbeit können Sie diese Aktion jedoch verwenden, um einen zusätzlichen Layer zu erstellen. Wie in Beschriftung erklärt, wird dann ein Primärschlüssel benötigt.

Die Aktion Leeren erlaubt es, alle Hilfsfelder zu behalten, aber ihren Inhalt zu entfernen. Auf diese Weise wird die Anzahl der Objekte, die diese Felder verwenden, auf 0 reduziert.

Mit der Aktion Löschen wird der zusätzliche Layer vollständig entfernt. Mit anderen Worten, die entsprechende Tabelle wird aus der zugrunde liegenden SQLite-Datenbank gelöscht und die Anpassung der Eigenschaften geht verloren.

Schließlich kann mit der Aktion Export der Hilfslayer als Neuer Vektor-Layer gespeichert werden. Beachten Sie, dass Geometrien nicht im Hilfsspeicher gespeichert werden. In diesem Fall werden die Geometrien jedoch auch aus der ursprünglichen Datenquelle exportiert.

16.1.11.5. Hilfsspeicher-Datenbank

Wenn Sie Ihr Projekt mit dem Format .qgs speichern, wird die SQLite-Datenbank, die als Hilfsspeicher verwendet wird, an der gleichen Stelle gespeichert, aber mit der Erweiterung .qgd.

Der Einfachheit halber kann stattdessen auch ein Archiv im .qgz-Format verwendet werden. In diesem Fall sind die Dateien .qgd und .qgs beide in das Archiv eingebettet.

16.1.12. Aktionen

Die Registerkarte action Aktionen bietet die Möglichkeit, eine Aktion auf der Grundlage der Attribute eines Objekts auszuführen. Damit kann eine beliebige Anzahl von Aktionen durchgeführt werden, z. B. die Ausführung eines Programms mit Argumenten, die aus den Attributen eines Objekts gebildet werden, oder die Übergabe von Parametern an ein Web-Reporting-Tool.

../../../_images/action_dialog.png

Abb. 16.56 Überblick über den Dialog Aktionen mit einigen Beispielaktionen

Aktionen sind nützlich, wenn Sie häufig eine externe Anwendung ausführen oder eine Webseite anzeigen möchten, die auf einem oder mehreren Werten in Ihrem Layer basiert. Es gibt verschiedene Arten von Aktionen, die wie folgt verwendet werden können:

  • Allgemein, macOS, Windows und Unix Aktionen starten einen externen Prozess.

  • Python Aktionen führen einen Python-Ausdruck aus.

  • Allgemein und Python Aktionen sind überall sichtbar.

  • macOS, Windows und Unix Aktionen sind nur auf der jeweiligen Plattform sichtbar (d. h. Sie können drei „Bearbeiten“-Aktionen definieren, um einen Editor zu öffnen, und die Benutzer können nur die eine „Bearbeiten“-Aktion für ihre Plattform sehen und ausführen, um den Editor zu starten).

  • URL öffnen: Verwendet eine HTTP-GET-Anfrage zum Öffnen einer angegebenen URL.

  • Submit-URL (url-kodiert oder JSON): Wie die Aktion URL öffnen, aber unter Verwendung einer HTTP POST-Anfrage. Die Daten werden an eine URL gesendet, unter Verwendung von „application/x-www-form-urlencoded“ oder „application/json“, wenn der Body ein gültiges JSON ist.

    Ein Beispiel für einen Aktionsaufruf könnte sein:

    http://localhost:8000?/[% url_encode(map('file', 'index.php')) %]
    
  • Submit URL (mehrteilig): Entspricht der Aktion URL öffnen, verwendet aber eine HTTP POST-Anfrage. Die Daten werden unter Verwendung von „multipart/form-data“ an eine URL gesendet.

Im Dialog sind mehrere Beispiele enthalten. Sie können sie laden, indem Sie auf Voreingestellte Aktionen erzeugen klicken. Um eines der Beispiele zu bearbeiten, doppelklicken Sie auf die entsprechende Zeile. Ein Beispiel ist die Durchführung einer Suche auf der Grundlage eines Attributwerts. Dieses Konzept wird in der folgenden Diskussion verwendet.

Mit :guilabel:checkbox In Attributtabelle anzeigen können Sie im Dialog der Attributtabelle die ausgewählten Aktionen anzeigen lassen, entweder als Kombinationsfeld oder als Einzelne Knöpfe (siehe Configuring the columns).

16.1.12.1. Aktionen definieren

Um eine Attribut-Aktion zu definieren, öffnen Sie den Vektor-Dialog Layereigenschaften und klicken auf die Registerkarte Aktionen. Hier klicken Sie auf symbologyAdd Neue Aktion hinzufügen, um den Dialog Aktion bearbeiten zu öffnen.

Wählen Sie den Aktions- Typ und geben Sie einen beschreibenden Namen für die Aktion an. Die Aktion selbst muss den Namen der Anwendung enthalten, die ausgeführt wird, wenn die Aktion aufgerufen wird. Sie können ein oder mehrere Attributfeldwerte als Argumente für die Anwendung hinzufügen. Wenn die Aktion aufgerufen wird, wird jede Zeichenfolge, die mit einem % beginnt, gefolgt von dem Namen eines Feldes, durch den Wert dieses Feldes ersetzt. Die Sonderzeichen %% werden durch den Wert des Feldes ersetzt, das aus der Tabelle der Identifizierungsergebnisse oder Attribute ausgewählt wurde (siehe Aktionen anwenden). Doppelte Anführungszeichen können verwendet werden, um Text zu einem einzigen Argument für das Programm, Skript oder den Befehl zusammenzufassen. Doppelte Anführungszeichen werden ignoriert, wenn ihnen ein Backslash vorangestellt ist.

Aktionen können nur einen einzelnen Prozess mit Argumenten aufrufen, daher funktionieren boolesche Operatoren (wie &, &&, ;, |) nicht. In UNIX-ähnlichen Betriebssystemen können mehrere Befehle über bash -c ausgeführt werden.

Mit Aktionsbereich können Sie festlegen, wo die Aktion verfügbar sein soll. Sie haben folgende Auswahlmöglichkeiten:

  1. Feld: Die Aktion ist verfügbar, wenn Sie mit der rechten Maustaste auf die Zelle in der Attributtabelle, im Objektformular und in der Standardaktionsschaltfläche der Hauptsymbolleiste klicken.

  2. Objekt: Die Aktion ist verfügbar, wenn Sie mit der rechten Maustaste in die Zelle der Attributtabelle klicken.

  3. Karte: Die Aktion ist über die Hauptaktionsschaltfläche in der Symbolleiste verfügbar.

  4. Formular: Die Aktion ist nur in einem Objekt-Formular verfügbar, das mit dem Drag-and-Drop Modus entworfen wurde.

  5. Layer: Die Aktion ist über die Aktionsschaltfläche in der Symbolleiste der Attributtabelle verfügbar. Beachten Sie, dass diese Art von Aktion den gesamten Layer und nicht die einzelnen Objekte betrifft.

Wenn Sie Feldnamen vorfinden die Substrings anderer Feldnamen sind (z.B., col1 und col10) sollten Sie das angeben, indem Sie den Feldnamen (und den % Buchstaben) mit eckigen Klammern umrunden (z.B. [%col10]). Hiermit wird vermieden, dass der Feldname %col10 mit dem Feldnamen %col1 mit einem 0 am Ende verwechselt wird. Die Klammern werden von QGS entfernt, wenn es im Wert des Feldes ersetzt. Wenn Sie wollen, dass das zu ersetzende Feld von eckigen Klammern umrandet wird, verwenden Sie ein zweites Set wie hier:[[%col10]].

Wenn Sie das Objekte abfragen Werkzeug verwenden, können Sie den Identifikationsergebnis Dialog öffnen. Es enthält eine (Abgeleitet) Item das layertyprelevante Informationen enthält. Die Werte in diesem Element können auf ähnliche Weise den anderen Feldern zugeordnet werden indem dem Abgeleitet Feldnamen ein (Derived) vorangeht. Zum Beispiel hat ein Punktlayer ein X und Y Feld und die Werte dieser Felder können in der Aktion mit %(Derived).X und %(Derived).Y verwendet werden. Die Abgeleitet Attribute sind nur in der Objekte abfragen Dialog Box erhältlich, jedoch nicht in der Attributtabelle Dialogbox.

Nachfolgend werden zwei Beispielaktionen gezeigt:

  • konqueror https://www.google.com/search?q=%nam

  • konqueror https://www.google.com/search?q=%%

Im ersten Beispiel wird der Webbrowser konqueror aufgerufen und eine URL zum Öffnen übergeben. Die URL führt eine Google-Suche nach dem Wert des Feldes nam aus unserem Vektor Layer durch. Beachten Sie, dass die Anwendung oder das Skript, das durch die Aktion aufgerufen wird, im Pfad enthalten sein muss, oder Sie müssen den vollständigen Pfad angeben. Um sicherzugehen, könnten wir das erste Beispiel wie folgt umschreiben: /opt/kde3/bin/konqueror https://www.google.com/search?q= %nam. Dadurch wird sichergestellt, dass die Konqueror-Anwendung ausgeführt wird, wenn die Aktion aufgerufen wird.

Das zweite Beispiel nutzt den Ausdruck %%, welcher unabhängig ist von einem speziellen Feld. Beim Ausführen des Befehls wird der Ausdruck %% durch den Wert des jeweils selektierten Feldes aus Objekte abfragen oder der Attributtabelle ersetzt.

16.1.12.2. Aktionen anwenden

QGIS bietet viele Möglichkeiten, um Aktionen auszuführen, die Sie auf einem Layer aktiviert haben. Abhängig von ihren Einstellungen können sie verfügbar sein:

  • im Dropdown-Menü von actionRun Funktionsaktion ausführen aus der Attribute-Symbolleiste oder dem Attribut-Tabelle-Dialog;

  • beim Rechtsklick auf ein Objekt mit dem Werkzeug identify Objekte abfragen (siehe Objekte abfragen für weitere Informationen);

  • aus dem Bedienfeld Identifikationsergebnis unter dem Abschnitt Aktionen;

  • als Elemente einer Spalte Aktionen im Dialog der Attributtabelle.

Wenn Sie eine Aktion mit %% Notation verwenden, machen Sie einen Rechtsklick auf den Feldwert im Identifikationsergebnis Dialog oder im Attributtabelle Dialog den Sie der Anwendung oder dem Skript übergeben wollen.

In einem weiteren Beispiel soll gezeigt werden, wie Attributwerte eines Vektorlayers abgefragt und in eine Textdatei mithilfe der Bash und des echo Kommandos geschrieben werden (funktioniert also nur unter nix und evtl. osx ). Der Abfragelayer enthält die Felder Art taxon_name, Latitude lat und Longitude long. Wir möchten jetzt eine räumliche Selektion von Örtlichkeiten machen und diese Feldwerte in eine Textdatei für den ausgewählten Datensatz (in der QGIS Kartenansicht in gelb gezeigt) exportieren. Hier ist die Aktion, um dies zu erreichen:

bash -c "echo \"%taxon_name %lat %long\" >> /tmp/species_localities.txt"

Nachdem ein paar Orte auf dem Bildschirm ausgewählt wurden (diese erscheinen gelb hinterlegt), starten wir die Aktion mit der rechten Maustaste über den Dialog Abfrageergebnisse und können danach in der Textdatei die Ergebnisse ansehen:

Acacia mearnsii -34.0800000000 150.0800000000
Acacia mearnsii -34.9000000000 150.1200000000
Acacia mearnsii -35.2200000000 149.9300000000
Acacia mearnsii -32.2700000000 150.4100000000

Als Übung können wir eine Aktion erstellen, die eine Google-Suche auf dem Layer Seen durchführt. Zunächst müssen wir die URL ermitteln, die für eine Suche nach einem Schlüsselwort erforderlich ist. Dies ist leicht zu bewerkstelligen, indem Sie Google aufrufen, eine einfache Suche durchführen und dann die URL aus der Adressleiste Ihres Browsers abrufen. Nach dieser kleinen Anstrengung sehen wir, dass das Format https://www.google.com/search?q=QGIS ist, wobei QGIS der Suchbegriff ist. Mit diesen Informationen ausgestattet, können wir fortfahren:

  1. Laden Sie den Layer file:lakes.shp.

  2. Öffnen Sie den Dialog Layereigenschaften, indem Sie einen Doppelklick auf den Layer in der Legende machen oder aus dem Kontextmenü (Rechtsklick) des Layers Eigenschaften… auswählen.

  3. Klicken Sie auf den Reiter Aktionen.

  4. Klicken Sie auf symbologyAdd Neue Aktion hinzufügen.

  5. Wählen Sie den Aktionstyp URL öffnen,

  6. Geben Sie einen Namen für die Aktion ein, z.B. Google Search.

  7. Zusätzlich können Sie ein Kurznamen oder auch ein Icon hinzufügen.

  8. Wählen Sie den Aktionsbereich. Siehe Aktionen definieren für weitere Informationen. Belassen Sie die Standardeinstellungen für dieses Beispiel.

  9. Für die Aktion fügen Sie die URL ein, die für eine Google-Suche verwendet wird, bis zum, aber nicht einschließlich des Suchbegriffs: https://www.google.com/search?q=.

  10. Der Text im Feld Aktion sollte nun wie folgt aussehen:

    https://www.google.com/search?q=
    
  11. Klicken Sie auf das Dropdown-Feld mit den Feldnamen für den Layer lakes. Es befindet sich direkt links neben der Schaltfläche Einfügen.

  12. Wählen Sie in der Dropdown-Box NAMES und klicken Sie auf Einfügen.

  13. Ihr Aktionstext sieht nun wie folgt aus:

    https://www.google.com/search?q=[%NAMES%]
    
  14. Um die Aktion fertigzustellen und hinzuzufügen, klicken Sie auf die Schaltfläche OK.

    ../../../_images/add_action_edit.png

    Abb. 16.57 Dialogfeld Neue Aktion hinzufügen

Damit ist der Vorgang abgeschlossen, und die Aktion ist einsatzbereit.

Schließen Sie das Dialogfeld Layereigenschaften und zoomen Sie auf ein Gebiet von Interesse. Vergewissern Sie sich, dass der Layer lakes aktiv ist und identifizieren Sie einen See. In den Identifikationsergebnissen sehen Sie nun, dass die erstelle Aktion sichtbar ist:

../../../_images/action_identifyaction.png

Abb. 16.58 Eine benutzerdefinierte Aktion in den Identifikationsergebnissen

Wenn wir auf die Aktion klicken, wird unser Standardbrowser aufgerufen und die URL https://www.google.com/search?q=Tustumena aufgerufen. Es ist auch möglich, der Aktion weitere Attributfelder hinzuzufügen. Dazu können Sie ein + an das Ende des Aktionstextes anhängen, ein weiteres Feld auswählen und auf Feld einfügen klicken. In diesem Beispiel gibt es einfach kein anderes Feld, nach dem zu suchen sinnvoll wäre.

Sie können auch mehrere Aktionen für einen Layer definieren. Sie alle werden dann bei der Abfrage von Objekten im Identifikationsergebnis Dialog angezeigt.

Sie können auch die aus der Attributtabelle aufrufen, indem Sie eine Zeile mit der rechten Maustaste auswählen und dann die Aktion aus dem Pop-up-Menü wählen.

Sie sehen, man kann sich eine Vielzahl interessanter Aktionen ausdenken. Wenn Sie z.B. einen Punktlayer mit einzelnen Punkten haben, an denen Photos geschossen wurden, dann können Sie eine Aktion erstellen, über die Sie dann das entsprechende Foto anzeigen lassen können, wenn Sie auf den Punkt in der Karte klicken. Man kann auch zu bestimmten Attributen webbasierte Information ablegen (z.B. in einer HTML-Datei) und diese dann über eine Aktion anzeigen lassen, etwa so wie in dem Google Beispiel.

Wir können auch komplexere Beispiele erstellen, indem wir z.B. Python Aktionen verwenden.

Wenn wir eine Aktion zum Öffnen einer Datei mit einer externen Anwendung erstellen, können wir in der Regel absolute Pfade oder auch relative Pfade verwenden. Im zweiten Fall ist der Pfad relativ zum Speicherort der ausführbaren Datei des externen Programms. Aber was ist, wenn wir relative Pfade verwenden müssen, relativ zum ausgewählten Layer (einem dateibasierten, wie Shapefile oder SpatiaLite)? Mit dem folgenden Code ist das kein Problem:

command = "firefox"
imagerelpath = "images_test/test_image.jpg"
layer = qgis.utils.iface.activeLayer()
import os.path
layerpath = layer.source() if layer.providerType() == 'ogr'
  else (qgis.core.QgsDataSourceURI(layer.source()).database()
    if layer.providerType() == 'spatialite' else None)
path = os.path.dirname(str(layerpath))
image = os.path.join(path,imagerelpath)
import subprocess
subprocess.Popen( [command, image ] )

Wir müssen uns nur ins Gedächtnis rufen dass es sich um eine Python Aktion handelt und dass das Ändern der command und imagerelpath Variablen auf unsere Bedürfnisse angepasst wird.

Was aber wenn der relative Pfad relativ zur (gespeicherten) Projektdatei sein muss? Der Code der Python Aktion würde wie folgt lauten:

command = "firefox"
imagerelpath = "images_test/test_image.jpg"
projectpath = qgis.core.QgsProject.instance().fileName()
import os.path
path = os.path.dirname(str(projectpath)) if projectpath != '' else None
image = os.path.join(path, imagerelpath)
import subprocess
subprocess.Popen( [command, image ] )

Ein anderes Python Aktion Beispiel ist das mit wir dem Projekt neue Layer hinzufügen können. Z.B. wird in den folgenden Beispielen dem Projekt ein Vektorlayer beziehungsweise ein Rasterlayer hinzugefügt. Die Namen der Dateien, die dem Projekt hinzugefügt werden sollen, und die Namen, die den Layern gegeben werden, sind datengesteuert (filename und layername sind Spaltennamen der Attributtabelle des Vektorlayers in dem die Aktion erstellt wurde):

qgis.utils.iface.addVectorLayer('/yourpath/[% "filename" %].shp',
  '[% "layername" %]', 'ogr')

Um eine Rasterdatei hinzuzufügen (ein TIF-Bild in diesem Beispiel) wird daraus:

qgis.utils.iface.addRasterLayer('/yourpath/[% "filename" %].tif',
  '[% "layername" %]')

16.1.13. Anzeige

Die Registerkarte display Anzeigen hilft Ihnen bei der Konfiguration von Feldern, die zur Identifizierung von Objekten verwendet werden:

  • Der Anzeigename: basiert auf einem Feld oder einem Ausdruck. Standardmäßig wird dies auf das erste Feld im Layer gesetzt, wenn kein Feld existiert, in dem <name> vorkommt. Dies wird verwendet als:

    • die Bezeichnung, die über den Objektinformationen in den Objekte abfragen-Ergebnissen angezeigt wird

    • das Feld, das in der Suchen-Leiste bei der Suche nach Objekten in allen Layern verwendet wird

    • die Kennung des Objekts in der Formularansicht der Attributtabelle

    • die Kennung des Objekts, wenn die Karte oder das Layout in ein Ausgabeformat mit Layern wie Geospatial PDF exportiert wird

    • die Kartentipp-Informationen, d.h. die Meldung, die in der Kartenansicht angezeigt wird, wenn der Mauszeiger über ein Objekt des aktiven Layers bewegt wird und das Symbol mapTips Kartenhinweise gedrückt ist. Anwendbar, wenn checkbox Kartentipps einschalten aktiv ist und kein HTML-Kartenhinweis gesetzt ist.

  • checkbox Kartentipps einschalten steuert, ob Kartentipps für den Layer angezeigt werden sollen

  • Der HTML-Kartenhinweis bietet einen komplexen und vollständigen HTML-Texteditor für Kartentipps, der QGIS-Ausdrücke und HTML-Stile und -Tags (mehrzeilig, Schriftarten, Bilder, Hyperlinks, Tabellen, …) kombiniert. Sie können das Ergebnis Ihres Codebeispiels im Rahmen Vorschau überprüfen (hier wird auch die Vorschau der Anzeigenamen-Ausgabe angezeigt).

../../../_images/display_html.png

Abb. 16.59 HTML-Code für Kartenhinweis

So zeigen Sie Kartentipps an:

  1. Wählen Sie den Menüpunkt Ansicht ► Kartenhinweise anzeigen oder klicken Sie auf das Symbol mapTips Kartenhinweise anzeigen in der Attributwerkzeugleiste.

  2. Vergewissern Sie sich, dass der Layer, auf den Sie abzielen, aktiv ist und dass die Eigenschaft checkbox Kartentipps anzeigen aktiviert ist.

  3. Bewegen Sie den Mauszeiger über ein Objekt, und die entsprechenden Informationen werden eingeblendet.

Der Kartentipp ist ein ebenenübergreifendes Objekt, d. h., wenn er einmal aktiviert ist, bleibt er eingeschaltet und gilt für alle mit dem Kartentipp versehenen Layer im Projekt, bis er wieder ausgeschaltet wird.

../../../_images/map_tip.png

Abb. 16.60 Kartenhinweis erstellt mit HTML-Code

16.1.14. Darstellung

../../../_images/vector_rendering.png

Abb. 16.61 Der Darstellung-Reiter

Der Reiter rendering Darstellung bietet folgende Eigenschaften:

  • Unter Maßstabsabhängige Sichtbarkeit können Sie die Maßstäbe Maximum („(inklusive)“) und :guilabel:`Minimum („(exklusive)“) festlegen und damit einen Bereich von Maßstäben definieren, in dem die Objekte des Layers sichtbar sind. Außerhalb dieses Bereichs werden sie ausgeblendet. Die Schaltfläche |mapIdentification| :sup:`Auf aktuellen Kartenmaßstab setzen hilft Ihnen, den aktuellen Maßstab der Kartenansicht als Grenze für den Sichtbarkeitsbereich zu verwenden. Siehe Einstellen des Sichtbarkeitsmaßstabs für weitere Informationen.

    Bemerkung

    Sie können die skalierungsabhängige Sichtbarkeit eines Layers auch über das Bedienfeld Layer aktivieren: Klicken Sie mit der rechten Maustaste auf den Layer und wählen Sie im Kontextmenü Maßstabsabhängige Sichtbarkeit des Layers setzen.

  • QGIS bietet Unterstützung für die on-the-fly Generalisierung von Objekten. Dies kann die Renderingzeiten beim Zeichnen vieler komplexer Objekte in kleinen Maßstäben verbessern. Dieses Objekt kann in den Layer-Einstellungen mit der Option checkbox Geometrie vereinfachen aktiviert oder deaktiviert werden. Es gibt auch eine globale Einstellung, die die Generalisierung standardmäßig für neu hinzugefügte Layer aktiviert (siehe Globale Vereinfachung für weitere Informationen).

    Bemerkung

    Objektgeneralisierung, kann in einigen Fällen, Artefakte in Ihre gerenderte Ausgabe einführen. Dies können Splitter zwischen Polygonen und ungenau Darstellung bei der Verwendung von Offset-basierten Symbolayern sein.

  • Mit unchecked Festgelegter Referenzmaßstab können Sie einen Kartenmaßstab angeben, auf den sich Symbologie- und Beschriftungsgrößen beziehen, die papierbasierte Einheiten (wie Millimeter oder Punkte) verwenden. Die Größen werden entsprechend skaliert, wenn die Karte in einem anderen Maßstab betrachtet wird.

    Ein Layer mit 2 mm breiten Linien und einem Maßstab von 1:2.000 Referenzmaßstab wird beispielsweise mit 4 mm breiten Linien dargestellt, wenn die Karte im Maßstab 1:1.000 betrachtet wird.

  • Mit der Gruppe Auswahlen können Sie steuern, ob eine bestimmte Farbe oder ein bestimmtes Symbol anstelle der Standardeinstellungen (Projekteigenschaften ► Allgemein ► Auswahlfarbe) für einen bestimmten Layer verwendet werden soll. Dies ist nützlich, um die Sichtbarkeit von ausgewählten Objekten mit bestimmten Symbolen zu verbessern:

    • Vorgabeauswahlfarbe verwenden

    • Farbe für gewählte Objekte übersteuern: z. B. wenn der Layer standardmäßig eine gelbe Farbe verwendet und die gelbe Standardauswahl nicht sichtbar ist.

    • Symbol für gewählte Objekte übersteuern: Wenn z. B. ein Layer mit Linien ein dünnes Symbol verwendet und die Linien durch Einfärben nicht ausreichend sichtbar werden, kann es hilfreich sein, das Symbol durch eine dickere Linie zu überschreiben. Wenn der Layer eine Rastersymbolik oder Farbverlaufsfüllungen/Linien/Shapeburst mit Farbrampen-Symbolik verwendet, wird die Standard-Auswahlfarbe nicht angewendet; die Möglichkeit, ein bestimmtes einfacheres Symbol für ausgewählte Objekte im Layer festzulegen, kann helfen.

  • Das Rendern von extrem detaillierten Layern (z. B. Polygon-Layern mit einer großen Anzahl von Knoten) kann dazu führen, dass Layout-Exporte im PDF/SVG-Format sehr groß werden, da alle Knoten in die exportierte Datei aufgenommen werden. Dies kann auch dazu führen, dass sich die resultierende Datei nur sehr langsam in anderen Programmen bearbeiten/öffnen lässt.

    Aktivieren von checkbox Darstellung des Layers als Raster erzwingen zwingt diese Layer dazu gerastert zu werden, sodass die exportierten Dateien nicht alle enthaltenen Knoten in diesen Layern enthalten müssen und die Wiedergabe daher beschleunigt wird.

    Sie können dies auch tun, indem Sie den Export des Layouts als Raster erzwingen, aber das ist eine Alles-oder-Nichts-Lösung, da die Rasterung auf alle Layer angewendet wird. Alternativ können Sie sich auf die Geometrievereinfachung in Layout-Exporteinstellungen verlassen.

  • unchecked Layeraktualisierungsintervall: steuert, ob und wie regelmäßig ein Layer aufgefrischt werden kann. Verfügbare Konfiguration-Optionen sind:

    • Daten neu laden: Der Layer wird vollständig aktualisiert. Alle zwischengespeicherten Daten werden verworfen und vom Anbieter neu geholt. Dieser Modus kann dazu führen, dass die Karte langsamer aktualisiert wird.

    • Nur Layer neu zeichnen: Dieser Modus ist nützlich für Animationen oder wenn der Stil des Layers in regelmäßigen Abständen aktualisiert werden soll. Die Aktualisierung der Kartenansicht wird aufgeschoben, um ein mehrfaches Aktualisieren zu vermeiden, wenn für mehr als einen Layer ein Intervall für die automatische Aktualisierung festgelegt wurde.

    Es ist auch möglich, das Intervall (Sekunden) zwischen aufeinanderfolgenden Auffrischungen einzustellen.

  • Abhängig vom Datenprovider (z.B. PostgreSQL) können Benachrichtigungen an QGIS gesendet werden, wenn Änderungen an der Datenquelle aus QGIS heraus vorgenommen werden. Verwenden Sie die Option checkbox Layer bei Benachrichtigung aktualisieren, um eine Aktualisierung auszulösen. Sie können die Aktualisierung des Layers auch auf eine bestimmte Nachricht beschränken, die Sie im Textfeld checkbox Nur bei Nachricht einstellen.

16.1.15. Zeitlich

Die Registerkarte temporal Zeitlich bietet Optionen zur Steuerung der Darstellung des Layers im Zeitverlauf. Für eine solche dynamische Darstellung muss die zeitabhängige Darstellung in der Kartenansicht aktiviert sein.

../../../_images/vector_temporal.png

Abb. 16.62 Dialog für zeitliche Eigenschaften von Vector Layern

Aktivieren Sie das Kontrollkästchen Dynamische Zeitsteuerung, um das zeitliche Rendering des Vector Layers zu konfigurieren. Je nach der Struktur Ihres Datensatzes sollten Sie eine der angebotenen Konfiguration verwenden:

  • Fester Zeitraum: alle Objekte werden gerendert, wenn sich der zeitliche Rahmen der Kartenansicht mit dem angegebenen Bereich Startdatum und Enddatum überschneidet.

  • Einzelfeld mit Datum/Uhrzeit: Objekte werden gerendert, wenn der Wert ihres Feldes innerhalb des zeitlichen Rahmens der Kartenansicht liegt. Eine Ereignisdauer kann gesetzt werden. Wenn die Option Objekte über Zeit sammeln aktiviert ist, werden alle Objekte, die vor oder innerhalb des Zeitrahmens der Karte auftreten, weiterhin gerendert. Die Ereignisdauer wird dabei ignoriert.

  • Getrennte Felder für Anfangs- und Enddatum/-zeit: Objekte werden gerendert, wenn der durch die Werte Beginnfeld und Endfeld angegebene Bereich die Kartenansicht zeitlich überlappt.

  • Getrennte Felder für Anfang und Ereignisdauer: Objekte werden gerendert, wenn der durch ihre Werte im Beginnfeld und Ereignisdauerfeld definierte Bereich die Kartenansicht zeitlich überlappt.

  • Anfangs- und Enddatum/-zeit aus Ausdrücken: Objekte werden gerendert, wenn der durch die Felder Anfangsausdruck und Endeausdruck angegebene Zeitbereich die Kartenansicht zeitlich überlappt.

  • Nur Layer neu zeichnen: Der Layer wird bei jedem neuen Animationsframe neu gezeichnet, aber es wird keine zeitbasierte Filterung auf die Objekte angewendet. Dies ist nützlich, wenn der Layer zeitbasierte Expression-Werte für Renderer-Einstellungen verwendet (z. B. datendefinierte Symbologie).

Es ist auch möglich, die Grenzen des Objekts als Zeitbereich zu setzen:

  • Start einschließen, Ende ausschließen das ist der Vorgabewert

  • Start und Ende einschließen

16.1.16. Variablen

Der Reiter expression Variablen listet alle Variablen auf, die auf der Ebene des Layers verfügbar sind (einschließlich aller globalen und Projektvariablen).

Sie ermöglicht dem Benutzer auch die Verwaltung von Variablen auf Layer-Ebene. Klicken Sie auf die Schaltfläche symbologyAdd, um eine neue benutzerdefinierte Variable auf Layer-Ebene hinzuzufügen. Ebenso können Sie eine benutzerdefinierte Variable auf Layer-Ebene aus der Liste auswählen und auf die Schaltfläche symbologyRemove klicken, um sie zu entfernen.

Weitere Informationen zur Verwendung von Variablen finden Sie im Abschnitt Speichern von Werten in Variablen.

16.1.17. Höhe

Die Registerkarte |elevationcale| Höhe bietet Optionen zur Steuerung der Layer-Höheneigenschaften in einer 3D-Kartenansicht und ihrer Darstellung im Geländehöhenprofil. Im Einzelnen können Sie einstellen:

../../../_images/vector_elevation.png

Abb. 16.63 Dialogfeld für die Höhen-Eigenschaften von Vektorlayern

  • Höhenbegrenzung: definiert, wie und ob die Objekte in der Höhe sein sollen:

    • Auf Gelände begrenzen: Übernimmt die Höhe direkt von der Geländehöhe und ignoriert alle vorhandenen Z-Werte in den Objekten. Es kann auch ein von den Daten definierter Versatz-Wert vom Terrain gefüllt werden.

    • Relativ zum Gelände: alle vorhandenen Z-Werte in den Objekten werden zur Geländehöhe addiert. Ein Maßstabsfaktor gefolgt von einem datendefinierten Versatz kann zur Anpassung der Höhe verwendet werden. Diese Option ist für 2D-Geometrie-Layer nicht verfügbar.

    • Absolut: ignoriert die Geländehöhe und übernimmt direkt die Z-Werte aus den Objekten für die Höhe. Ein Maßstab-Faktor, gefolgt von einem datendefinierten Offset kann zur Anpassung der Höhe verwendet werden. Bei 2D-Geometrie-Layern (ohne Z-Werte) kann stattdessen ein datendefiniertes Basishöhe gesetzt werden.

  • unchecked Extrudierung aktivieren: Sie können ein Höhe setzen, um festzulegen, wie hoch Objekte vertikal über ihre Basis hinausragen. Dies ist praktisch, um anzuzeigen, dass ein Layer mit 2D-Geometrie, z. B. ein Layer mit polygonalen Gebäudegrundrissen, tatsächlich 3D-Objekte darstellt.

  • Höhenbindung: Diese Option ist nur von Bedeutung, wenn eine Höhenbegrenzung, die sich auf das Terrain bezieht, mit einem Linien- oder Polygon-Layer kombiniert wird. Sie steuert, wie die Höhe des Objekts relativ zur Terrainhöhe festgelegt wird. Das Terrain kann abgetastet werden:

    • am Zentroid des Objekts, wobei die Höhe des Schwerpunkts zum z-Wert jedes Scheitelpunkts addiert wird

    • an jedem einzelnen Stützpunkt, bevor er zum z-Wert des Scheitelpunkts addiert wird

  • Profildiagrammenerscheinungsbild: steuert, wie Objekte beim Zeichnen eines Profildiagramms dargestellt werden. Für die Interpretation sind zwei Modi verfügbar:

    • Einzelne Objekte: tastet diskrete Positionen ab, an denen sich die Querschnittslinie des Profils mit den Vektorobjekten schneidet. Dieser Schnittpunkt kann als Punkt, Linie oder Fläche dargestellt werden, je nach Layer-Typ und ob eine Extrusion angewendet wird.

      Wenn Sie das Kontrollkästchen Layersymbolik beachten aktivieren, werden Objekte auf dem Profildiagramm mit dem entsprechenden Layer-Symboltyp dargestellt (sodass z.B. kategorisierte Klassen auf dem Profildiagramm sichtbar sind). Wenn der Profilsymboltyp nicht mit den Symboltypen des Layer-Renderers übereinstimmt, wird nur die Symbolfarbe des Renderers auf das Profilsymbol angewendet.

      Abhängig von den Layer-Einstellungen können Profilsymbole mit einem benutzerdefinierten Stil dargestellt werden, indem sie verwendet werden:

      • :ref:`Markierungsstil <vector_marker_symbols> `: für nicht-extrudierte Punkt- und Linienobjekte und für nicht-extrudierte Polygonobjekte, die von der Profillinie berührt werden

      • Linienstil: für extrudierte Punkt- und Linienobjekte und für nicht-extrudierte Polygonobjekte, die von der Profillinie geschnitten werden

      • :ref:`Füllstil <vector_fill_symbols> `: für extrudierte Polygonobjekte

    • als Kontinuierliche Oberfläche (z.B. Höhenlinien): Das Höhendiagramm wird als eine Oberfläche anstelle von separaten Objekten dargestellt, indem die abgetasteten Höhenergebnisse zu einer kontinuierlichen Linie verbunden werden. Dies kann die Visualisierung verbessern und ist für Layer gedacht, die eine kontinuierliche Oberfläche darstellen, z. B. Höhenlinien oder vermessene Höhenpunkte. Der Profil- Stil kann wie folgt eingestellt werden:

      • ein Line mit einem bestimmten Linenstil

      • eine Höhenfläche, die mit einem Füllsymbol entweder über (Oberhalb füllen) oder unter (Darunter füllen) der Höhenkurvenlinie dargestellt wird. Die Oberflächensymbolik wird mit dargestellt:

        • ein Füllstil

        • und eine Begrenzung: die maximale (bzw. minimale) Höhe, die bestimmt, wie hoch die Füllfläche sein wird

      Außerdem können Sie Abtastpunkte markieren aktivieren, um diese über der Interpretationslinie sichtbar zu machen und ihnen einen Markierungsstil zuzuweisen.

16.1.18. Metadaten

Der Reiter editMetadata Metadata bietet Ihnen Optionen zum Erstellen und Bearbeiten eines Metadatenberichts zu Ihrem Layer. Siehe Metadaten für weitere Informationen.

16.1.19. Abhängigkeiten

Der Reiter dependencies Abhängigkeiten erlaubt es, Datenabhängigkeiten zwischen Layern zu deklarieren. Eine Datenabhängigkeit tritt auf, wenn eine Datenänderung in einem Layer, die nicht durch direkte Benutzermanipulation erfolgt, Daten anderer Layer verändern kann. Dies ist z. B. der Fall, wenn die Geometrie eines Layers durch einen Datenbank-Trigger oder ein benutzerdefiniertes PyQGIS-Skript aktualisiert wird, nachdem die Geometrie eines anderen Layers geändert wurde.

Auf der Registerkarte Abhängigkeiten können Sie alle Layer auswählen, die die Daten des aktuellen Layers von außen verändern können. Die korrekte Angabe von abhängigen Layern ermöglicht es QGIS, die Caches für diesen Layer ungültig zu machen, wenn die abhängigen Layer geändert werden.

16.1.20. Legende

Der Reiter legend Legend bietet Ihnen erweiterte Einstellungen für das Layer Bedienfeld und/oder die Drucklayout Legende. Diese Optionen umfassen:

  • Abhängig von der auf den Layer angewendeten Symbologie können Sie mehrere Einträge in der Legende erhalten, die nicht unbedingt lesbar oder nützlich für die Anzeige sind. Das Legendenplatzhalterbild hilft Ihnen bei der Auswahl eines Bildes zum Ersetzen, das sowohl im Bedienfeld Layer als auch in der Drucklayoutlegende angezeigt wird.

  • checkbox Beschriftungslegende anzeigen: Zeigt Übersichten über die verschiedenen Etiketteneinstellungen als Einträge in den Legenden an. Der Label-Stil wird zusammen mit der Beschreibung in der Vorschau angezeigt.

  • checkbox Text auf Symbolen: In manchen Fällen kann es sinnvoll sein, den Symbolen in der Legende zusätzliche Informationen hinzuzufügen. Mit diesem Rahmen können Sie jedem der in der Layer-Symbologie verwendeten Symbole einen Text zuordnen, der sowohl im Bedienfeld Layer als auch in der Drucklayoutlegende über dem Symbol angezeigt wird. Diese Zuordnung erfolgt durch Eingabe des Textes neben dem Symbol im Tabellen-Widget oder durch Ausfüllen der Tabelle mit der Schaltfläche Beschriftungen aus Ausdruck setzen. Das Aussehen des Textes wird über die Schriftart- und Farbauswahl-Widgets der Schaltfläche Textformat gesteuert.

../../../_images/text_legend_symbols.png

Abb. 16.64 Setzen von Text auf Symbolen (links) und seine Darstellung im Bedienfeld Layer (rechts)

  • eine Liste von Widgets, die Sie in den Layer-Baum im Bedienfeld Layers einbetten können. Die Idee ist, eine Möglichkeit zu haben, schnell auf einige Aktionen zuzugreifen, die häufig mit dem Layer verwendet werden (Einrichten von Transparenz, Filtern, Auswahl, Stil oder anderen Dingen…).

    Standardmäßig stellt QGIS ein Transparenz-Widget zur Verfügung, das jedoch durch Plugins erweitert werden kann, die ihre eigenen Widgets registrieren und den von ihnen verwalteten Layern eigene Aktionen zuweisen.

16.1.21. QGIS Server

Der Reiter overlay QGIS Server besteht aus den Abschnitten Beschreibung, Beschreibung, Metadaten-URL und Legend-URL.

Im Abschnitt Beschreibung können Sie den Kurznamen ändern, der verwendet wird, um den Layer in Anfragen zu referenzieren (um mehr über Kurznamen zu erfahren, lesen Sie Short name). Sie können auch ein Titel und Zusammenfassung für den Layer hinzufügen oder bearbeiten, oder eine Schlüsselwortliste hier definieren. Diese Schlagwortlisten können in einem Metadatenkatalog verwendet werden. Wenn Sie einen Titel aus einer XML-Metadatendatei verwenden wollen, müssen Sie einen Link in das Feld Daten-URL eintragen.

Verwenden Sie Attribution, um Attributdaten aus einem XML-Metadatenkatalog zu erhalten.

In Metadaten URL können Sie die allgemeinen Pfade zum XML-Metadatenkatalog angeben. Diese Informationen werden in der QGIS-Projektdatei für spätere Sitzungen gespeichert und für QGIS Server verwendet.

Im Abschnitt Legenden-URL können Sie die URL eines Legendenbildes in das Feld url eingeben. Über die Dropdown-Option Format können Sie das entsprechende Bildformat auswählen. Derzeit werden die Bildformate png, jpg und jpeg unterstützt.

../../../_images/vector_server_properties.png

Abb. 16.65 QGIS Server-Registerkarte im Eigenschaftsdialog für Vektorlayer

Um mehr über QGIS Server zu erfahren, lesen Sie die QGIS Server Anleitung/Handbuch.

16.1.22. Digitalisieren

Der Reiter digitizing Digitalisieren ermöglicht den Zugriff auf Optionen, die dazu beitragen, die Qualität der digitalisierten Geometrien zu gewährleisten.

../../../_images/vector_digitizing_properties.png

Abb. 16.66 Die QGIS-Registerkarte „Digitalisieren“ im Eigenschaftsdialog für Vektor-Layer

16.1.22.1. Automatische Reparaturen

Die Optionen im Abschnitt Automatische Reparaturen wirken sich direkt auf die Eckpunkte jeder hinzugefügten oder geänderten Geometrie aus. Wenn die Option checkbox Doppelte Knoten entfernen aktiviert ist, werden zwei aufeinanderfolgende Knoten mit exakt den gleichen Koordinaten entfernt. Wenn die Option Geometriegenauigkeit gesetzt ist, werden alle Scheitelpunkte auf das nächste Vielfache der konfigurierten Geometriegenauigkeit gerundet. Die Rundung erfolgt im Layer-Koordinatenreferenzsystem. Z- und M-Werte werden nicht gerundet. Bei vielen Kartenwerkzeugen wird während des Digitalisierens ein Raster auf der Kartenansicht angezeigt.

../../../_images/vertex_snap_to_grid.png

Abb. 16.67 Wird der oberste Stützpunkt verschoben, werden alle Stützpunkte auf das Gitter eingerastet

16.1.22.2. Geometrieprüfungen

Im Abschnitt Geometrieprüfungen können zusätzliche Prüfungen für jede einzelne Geometrie aktiviert werden. Unmittelbar nach jeder Geometrieänderung wird dem Benutzer im Bedienfeld Geometrievalidierung ein Fehlschlagen dieser Prüfungen gemeldet. Solange eine Prüfung fehlschlägt, ist es nicht möglich, den Layer zu speichern. Die checkbox Ist gültig-Prüfung führt grundlegende Gültigkeitsprüfungen wie z.B. die Selbstüberschneidung von Geometrien durch.

16.1.22.3. Topologieprüfungen

Im Abschnitt Topologieprüfungen können zusätzliche Topologieprüfungen aktiviert werden. Die Topologieprüfungen werden ausgeführt, wenn der Benutzer den Layer speichert. Prüffehler werden im Bedienfeld Geometrievalidierung angezeigt. Solange Validierungsfehler vorhanden sind, kann der Layer nicht gespeichert werden. Topologieprüfungen werden im Bereich der Bounding Box der geänderten Objekte durchgeführt. Da im selben Bereich auch andere Objekte vorhanden sein können, werden topologische Fehler, die diese Objekte betreffen, ebenso gemeldet wie Fehler, die in der aktuellen Bearbeitungssitzung entstanden sind.

Option Topologieprüfung

Illustration

Das Kontrollkästchen Lücke prüft auf Lücken zwischen benachbarten Polygonen.

../../../_images/gapcheck.png

Das Kontrollkästchen Überlappt prüft auf Überlappungen zwischen benachbarten Polygonen.

../../../_images/overlapcheck.png

Die checkbox Stützpunkt fehlt prüft auf gemeinsame Grenzen benachbarter Polygone, bei denen eine Grenze einen Scheitelpunkt vermisst, der auf der anderen vorhanden ist.

../../../_images/missingvertexcheck.png

Ausnahmen bei der Lückenprüfung

Manchmal ist es wünschenswert, Lücken innerhalb eines Gebiets in einem Layer mit Polygonen zu lassen, das ansonsten vollständig von Polygonen bedeckt ist. Zum Beispiel kann ein Landnutzungs Layer akzeptable Lücken für Seen haben. Es ist möglich, Bereiche zu definieren, die bei der Lückenprüfung ignoriert werden. Da Lücken innerhalb dieser Bereiche erlaubt sind, werden sie als Allowed Gaps-Bereiche bezeichnet.

In den Optionen für die Lückenprüfungen unter Erlaubte Lücken kann ein Erlaubte Lücken Layer konfiguriert werden.

Wenn die Lückenprüfung durchgeführt wird, werden Lücken, die durch ein oder mehrere Polygone im Erlaubte Lücken Layer abgedeckt sind, nicht als Topologiefehler gemeldet.

Es ist auch möglich, einen zusätzlichen Puffer zu konfigurieren. Dieser Puffer wird auf jedes Polygon auf dem Erlaubte Lücken Layer angewendet. Dies ermöglicht es, die Tests weniger anfällig für kleine Änderungen der Umrisse an den Grenzen der Lücken zu machen.

Wenn Erlaubte Lücken aktiviert sind, ist eine zusätzliche Schaltfläche (Erlaubte Lücke hinzufügen) für erkannte Lückenfehler im Geometrievalidierungsdock verfügbar, wo Lücken während der Digitalisierung gemeldet werden. Wird die Schaltfläche Erlaubte Lücke hinzufügen betätigt, wird ein neues Polygon mit der Geometrie der erkannten Lücke in den Layer für erlaubte Lücken eingefügt. Dies ermöglicht es, Lücken schnell als erlaubt zu markieren.

Bedienfeld für die Geometrieprüfung

Das Bedienfeld Geometrieprüfung wird ausgelöst, wenn bei einer der oben genannten Digitalisierungsprüfungen ein Fehler festgestellt wird. Das Dialogfeld enthält eine Liste der Fehler und deren Beschreibung. Sie können die Liste mit den Pfeiltasten der Tastatur oder den entsprechenden Pfeilen durchblättern.

Bevor Sie die Bearbeitungen auf dem Layer speichern können, müssen Sie alle Probleme beheben. Tun Sie das:

  1. Wählen Sie einen Fehler aus, und Sie können ihn beheben:

    • zoomToSelected Auf Objekt(e) zoomen

    • zoomToLayer Auf Problem zoomen

  2. Wählen Sie die üblichen Digitalisierungswerkzeuge, um das Problem zu beheben.