Suchen, Filtern und Wählen in QGIS

GIS-Projekte sind oft komplex und unübersichtlich. Sie bestehen häufig aus mehreren Layern und vielen bis sehr vielen Objekten. Wir müssen also in der Lage sein, die angezeigten Objekte zu reduzieren (zu filtern), konkrete Daten zu suchen und ggf. die Ergebnisse der Suche oder des Filters in eine Auswahl zu überführen, um damit weitere Operationen durchführen zu können.

Um nach einem konkreten Wert suchen zu können, müssen wir den Layer wählen, in welchem wir den Wert vermuten. Eine layerübergreifende Suche gibt es bislang noch nicht an Bord von QGIS. Dafür aber eine nette Erweiterung mit vielen zusätzlichen Funktionen: SearchLayers

Abfragen und Filtern mit der Attributtabelle

Filterfunktionen der Attributtabelle (QGIS 3.22)

Arbeiten wir mit Vektor-Geodaten, so arbeiten wir immer auch mit Tabellen (Attributtabellen). Und wie in einer herkömmlichen Excel-Tabelle können wir auch in Attributtabellen nach Werten sortieren, filtern und abfragen. In QGIS gibt es dabei gleich mehrere Wege: Von einfach mit der Maus zurechtgeklickt bis hin zu komplexen Abfragen mittels Skriptsprache (QGIS Ausdrücke).

Die Filter- und Suchfunktionen finden wir am unteren linken Rand der Attributtabelle . Hier haben wir u. a. die Wahl zwischen:

  • Feldfilter und
  • Fortgeschrittener Filter (Ausdruck)

Das Filtern der Attributtabelle führt dazu, dass der Inhalt der Tabelle auf jene Zeilen reduziert wird, welche dem gesetzten Filter entsprechen. Setzen wir beispielsweise für das Attribut „Vogelart“ den Filter auf „Mäusebussard“, so werden auch nur die Zeilen der Tabelle angezeigt, in denen der Begriff „Mäusebussard“ im Attribut „Vogelart“ vorkommt. Die Gesamtzahl der Tabellenzeilen (sprich die Anzahl der Objekte) finden wir im Tabellenkopf an erster Stelle. Es folgen die Anzahl der gefilterten Objekte und danach die der gewählten Objekte.

Feldfilter in der Attributtabelle

Der Feldfilter ermöglicht uns das Filtern bzw. die Suche nach den Werten eines Attributs (auch „Feld“ genannt). Wir wählen dazu das entsprechende Attribut und tippen den Wert oder einen Teil des Wertes ein, den wir suchen: . QGIS wird bereits während der Eingabe treffende Begriffe vorschlagen, welche wir auswählen oder mit Enter bestätigen können. Die Attributtabelle wird nun nur noch die Zeilen anzeigen, welche den Wert „Bussard“ in der Attributspalte „Vogelart“ enthalten. Auch ähnliche Begriffe wie „Graubussard“ oder „Bergbussard“ werden beim Filtern berücksichtigt.

Ein Linksklick in den Bereich der Attributtabelle, der weder Zeile noch Spalte ist (oben links, Schnittpunkt der Header), bringt alle aktuell gefilterten Objekte in die Auswahl, mit welcher sich nun weitere Möglichkeiten ergeben (im nebenstehenden Video ab 0:22 Min).

Mit diesem Filter lassen sich nur Werte einer einzelnen Attributspalte filtern. Möchte man komplexere Abfragen an mehreren Attributen gleichzeitig oder mit Geometrieeigenschaften durchführen, so muss man sich mit den QGIS Ausdrücken auseinandersetzen.

Fortgeschrittener Filter in der Attributtabelle (Ausdruck)

Deutlich umfangreicher und flexibler im Vergleich zum Attributfilter fällt der fortgeschrittene Filter mit Hilfe von QGIS Ausdrücken aus. Allerdings begeben wir uns hier auch auf ein neues Level: QGIS Ausdrücke sind komplex und mächtig und nicht immer leicht zu verstehen. Gehen wir es also langsam an.

Mit Hilfe von QGIS Ausdrücken und dem fortgeschrittenen Filter können wir sämtliche erdenklichen Filter- und Suchfunktionen erzeugen und verschachteln. Dabei stehen uns nicht nur die Attribute und Werte der Attributtabellen zur Verfügung, sondern auch geometrische und räumliche Eigenschaften – hierzu gibt es eine Lektion in QGIS Advanced: Auswählen und Abfragen mit QGIS

Bei der Verwendung des fortgeschrittenen Filters nutzen wir den Ausdrucksdialog, der uns hilft und uns immer wieder in QGIS begegnen wird. Mehr zum Ausdrucksdialog und zu Ausdrücken folgt in der nächsten Lektion: Ausdrücke und Ausdrucksdialog

Hat man einmal einen Ausdruck erzeugt, lässt sich dieser nicht nur zum Filtern verwenden! Wir können damit z. B. auch auf direktem Wege Objekte auswählen, etwa mit dem „Objekt nach Ausdruck wählen“-Werkzeug . Alternativ können wir den Ausdruck auch direkt als sog. Vorfilter (Provider Feature Filter) an unserem Layer setzen: Rechtsklick auf den Layer → Filter…

Einige einfache und doch schon recht vielseitige Beispiele:

Ausdruck Ergebnis Erläuterung
„Vogelart“ = 'Mäusebussard' OR „Vogelart“ = 'Rotmilan' Alle Mäusebussarde und alle Rotmilane Abfrage an einem Attribut mit zwei Möglichkeiten
„Vogelart“ IN ('Mäusebussard', 'Rotmilan') Alle Mäusebussarde und alle Rotmilane Elegantere Alternative zu oben
„Vogelart“ = 'Mäusebussard' AND „Verhalten“ = 'kreisend' Alle kreisenden Mäusebussarde Abfrage an zwei Attributen. Zwei Bedingungen müssen erfüllt sein
„Vogelart“ = 'Mäusebussard' AND „Verhalten“ != 'kreisend' Alle nicht-kreisenden Mäusebussarde Abfrage an zwei Attributen. Zwei Bedingungen müssen erfüllt sein

Auswählen ohne Attributtabelle

Die Attributtabelle bietet uns eine Übersicht aller Objekte – zur Auswahl von Objekten benötigen wir sie aber nicht zwingend. Wir können sie sozusagen „umgehen“, uns den Zwischenschritt des Filterns sparen und gelangen damit auf direktestem Weg zu einer Auswahl. Im Folgenden werden zwei mögliche Wege beschrieben, um ohne Attributtabelle mit dem Formular oder einem Ausdruck direkt zu wählen.

Für ganz schnelles Arbeiten: Im „Locator“-Suchfeld unten links im QGIS-Hauptfenster genügt es, die Begriffe „Wählen“ oder „Select“ einzutippen. Es werden so direkt verschiedene Möglichkeiten der Objekt-Auswahl vorgeschlagen.

Auswählen mit dem Auswahlformular

Formular-Auswahl aus der Auswahlwerkzeugleiste (QGIS 3.22)

Nutzer:innenfreundlich, aber keineswegs so vielseitig wie der oben beschriebene Ausdrucks-Filter, ist die Auswahl von Objekten mit Hilfe eines Auswahl-Formulars, welches wir in der Auswahlwerkzeugleiste mit diesem Symbol finden: oder mit der Taste F3 aufrufen.

Hier können die gesuchten Werte in die jeweiligen Attribute (Felder) eingetragen und mit gewünschten Operatoren versehen werden. Dazu müssen wir nicht viel tippen; die wichtigsten Regeln und Operatoren sind über die Formularfelder mit der Maus zu erreichen. Es besteht neben der Möglichkeit, konkrete Objekte zu wählen, auch die Option, Objekte aus einer bereits bestehenden Auswahl zu entfernen oder weitere hinzuzufügen. Zum Auswahl-Ergebnis kann gezoomt werden und man kann die Objekte aufleuchten lassen, um sie in der Karte leichter zu finden.

Direktes Wählen mit Hilfe von Ausdrücken

Ausdruck-Auswahl aus der Auswahlwerkzeugleiste (QGIS 3.24)

Direktes Wählen von Objekten ohne Umwege über die Attributtabelle ermöglicht das Werkzeug Objekte nach Ausdruck wählen. Es ist zu finden in der Auswahlwerkzeugleiste mit diesem Symbol:

Hier kann nun mit Hilfe von QGIS-Ausdrücken jede denkbare Abfrage durchgeführt werden. Das Resultat kann direkt gewählt bzw. aus einer vorhandenen Auswahl entfernt oder dieser hinzugefügt werden.

Die Möglichkeiten von Ausdrücken sind unerschöpflich. Hier ein Überblick: QGIS Ausdrücke (Expressions)

Räumliche Auswahl: Nach Position selektieren

Dialog „Nach Position wählen“ (QGIS 3.40)

Bisher haben wir Objekte basierend auf ihren Eigenschaften (Attributen) ausgewählt. Die eigentliche Stärke eines GIS liegt jedoch in der räumlichen Analyse. Oft wollen wir wissen: „Welche Grundstücke liegen innerhalb des Landschaftsschutzgebietes?“ oder „Welche Gebäude werden von der geplanten Straße geschnitten?“.

Hierfür nutzen wir das Werkzeug Nach Position selektieren (Select by Location). Zu finden ist es im Menü unter Vektor → Forschungswerkzeuge → Nach Position wählen oder direkt in der Auswahlwerkzeugleiste.

Das Prinzip ist dabei immer ein Vergleich zweier Layer:

  1. Zu wählende Objekte aus: Der Layer, in dem die Auswahl getroffen werden soll (z. B. „Grundstücke“).
  2. Durch Vergleich mit den Objekten von: Der Referenz-Layer (z. B. „Landschaftsschutzgebiet“).

Soll nur mit bestimmten Objekten des Referenz-Layers verglichen werden (z. B. nur mit einem spezifischen Schutzgebiet und nicht allen), muss im Referenz-Layer zuerst eine Auswahl getroffen werden. Das Werkzeug berücksichtigt standardmäßig „Nur gewählte Objekte“, wenn im Vergleichs-Layer eine Auswahl besteht (erkennbar an der Checkbox im Dialog).

Die geometrischen Prädikate (Beziehungen)

Entscheidend für das Ergebnis ist das gewählte geometrische Prädikat. Es definiert, wie die Objekte zueinander liegen müssen, um ausgewählt zu werden. QGIS nutzt hierbei die Standard-Definitionen der OGC (Open Geospatial Consortium). Da die Unterschiede im Detail oft verwirrend sein können, hier eine Übersicht:

Prädikat (DE) Prädikat (EN) Technische Definition
Schneidet Intersects Das „Universal-Prädikat“. Dies ist wahr, wenn die Geometrien irgendeinen gemeinsamen Punkt haben (innen oder am Rand). Es ist die Umkehrung von „Getrennt“. <br> Wenn Unsicherheit besteht, ist dies meist die sicherste Wahl.
Berührt Touches Die Geometrien haben mindestens einen gemeinsamen Randpunkt, aber keinen gemeinsamen Punkt im Inneren.<br> (Beispiel: Eine Linie endet genau auf der Grenze eines Polygons oder zwei Polygone teilen sich eine Grenze, überlappen sich aber nicht).
Enthält Contains Geometrie B liegt vollständig innerhalb von Geometrie A. Kein Punkt von B liegt außerhalb von A. (A enthält B).
Sind innerhalb Within Das Gegenstück zu „Enthält“. Geometrie A liegt vollständig in Geometrie B. (A ist innerhalb von B).
Getrennt Disjoint Die Geometrien haben absolut keine gemeinsamen Punkte. Sie berühren und schneiden sich nicht.
Gleich Equals Die Geometrien sind topologisch identisch (dieselben Knoten/Stützpunkte an denselben Koordinaten).

Ein häufiges Missverständnis entsteht beim Unterschied zwischen „Schneidet“ (Intersects) und „Enthält“ (Contains).

  • Wenn ein Gebäude zur Hälfte im Schutzgebiet liegt, wird es bei „Enthält“ NICHT ausgewählt (da es nicht vollständig drin ist).
  • Bei „Schneidet“ wird es ausgewählt.

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information

Fragen, Hinweise und Fehler kommen hier hin:

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
S A A C T