Wichtig

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

12.1. Lesson: GRASS Setup

Die Nutzung von GRASS in QGIS erfordert etwas Umdenken in Bezug auf die Benutzerschnittstelle. Man arbeit nicht direkt in QGIS sonder in GRASS über QGIS. Stellen Sie daher sicher, dass QGIS Desktop mit GRASS Unterstützung installiert ist.

win To open a QGIS session with GRASS available on Windows you have to click on the QGIS Desktop with GRASS icon.

Ziel dieser Übung: Erstellung eines GRASS Projektes in QGIS.

12.1.1. ★☆☆ Follow Along: Start a New GRASS Session

To launch GRASS from within QGIS, you need to activate it as with any other plugin:

  1. Öffne zuerst ein neues QGIS Projekt.

  2. In the Plugin Manager, enable grassTools GRASS 8 in the list:

    ../../../_images/enable_grass.png

    Die GRASS Werkzeugleiste und das GRASS Bedienfeld werden nun angezeigt:

    ../../../_images/grass_panel.png

    Abb. 12.30 GRASS Toolbar and Panel

Das GRASS Bedienfeld ist noch nicht aktiv. Vorher muss ein Mapset erstellt werden. GRASS arbeit immer in einer Datenbankumgebung. Das bedeutet, dass die Daten die verwendet werden sollen, in die Datenbank importiert werden müssen.

Die GRASS Datenbank hat eine überschaubare Struktur, selbst wenn sie auf den ersten Blick sehr kompliziert wirkt. Am Wichtigsten ist es zu verstehen, dass die oberste Ebene der Datenbank die Location ist. Jede Location kann mehrere verschiedene Mapset enthalten: in jedem Mapset ist das PERMANENT Mapset enthalten. Es wird standardmäßig von GRASS erstellt. Jedes Mapset enthält die Daten (Raster, Vektor usw.) in einer bestimmten Struktur, aber keine Sorge, darum kümmert sich GRASS.

Just remember: Location contains Mapset that contains the data. For more information visit the GRASS website.

../../../_images/grass_database.png

Abb. 12.31 Die GRASS Datenbankstruktur (aus der GRASS Hilfe)

12.1.2. ★☆☆ Follow Along: Start a New GRASS Project

  1. Click on the Plugins ► GRASS ► New Mapset menu:

    ../../../_images/grass_menu.png

    Du wirst nun nach dem GRASS Datenbankverzeichnis gefragt.

  2. Wir geben das Verzeichnis ein, das GRASS für die Einrichtung seiner Datenbank verwenden wird.

    ../../../_images/grass_folder.png
  3. Klicken Sie auf Weiter.

GRASS muss eine Location erstellen, die die maximale Ausdehnung des Arbeitsgebietes beschreibt und auch GRASS Region genannt wird.

Bemerkung

Die Region ist extrem wichtig für GRASS, da sie das Gebiet beschreibt in dem alle Layer von GRASS berücksichtigt werden. Alles außerhalb wird nicht berücksichtigt. Keine Sorge, man kann die Ausdehnung der GRASS Region immer auch nach der Erstellung ändern.

  1. Wir nennen die neue location SouthAfrica:

    ../../../_images/new_location.png
  2. Klicken Sie auf Weiter.

  3. Wir werden mit WGS 84 arbeiten, d.h. wir suchen und wählen dieses KBS:

    ../../../_images/wgs_84_selected.png
  4. Klicken Sie auf Weiter.

  5. Wähle nun die Region South Africa aus dem dropdown Menü und klicke auf Setzen:

    ../../../_images/set_south_africa.png
  6. Klicken Sie auf Weiter.

  7. Wir erstellen ein mapset, d.h. die Kartendatei in der wir arbeiten.

    ../../../_images/grass_mapset.png

    Wenn wir fertig sind, wird ein Dialogfenster mit einer Zusammenfassung der eingegebenen Informationen angezeigt.

    ../../../_images/grass_final.png
  8. Klicke auf Abschließen.

  9. Klicke in der Erfolgsmeldung auf OK.

Das GRASS Bedienfeld wird jetzt aktiviert und wir können alle GRASS Werkzeuge nutzen.

12.1.3. ★☆☆ Follow Along: Loading Vector Data into GRASS

Wir haben jetzt eine leere Karte. Bevor wir die GRASS Werkzeuge nutzen können, müssen wir Daten in die GRASS Datenbank laden, d.h. in das Mapset. Man kann GRASS Werkzeuge nicht mit Layern verwenden, die nicht in einem GRASS Mapset geladen sind.

Es gibt verschiedene Möglichkeiten, Daten in die GRASS Datenbank zu laden. Wir beginnen mit der Ersten.

★☆☆ Follow Along: Load data using the QGIS Browser

Im Kapitel ★☆☆ The Browser Panel sahen wir, dass das Browser Bedienfeld der einfachste Weg ist, um Daten in QGIS zu laden.

GRASS Daten werden vom QGIS Browser als echte GRASS Daten erkannt. Dies erkennt man am GRASS Icon neben dem GRASS Mapset. Außerdem wird das grassMapsetOpen Icon neben einem geöffneten Mapset angezeigt.

../../../_images/grass_browser.png

Bemerkung

Man sieht eine Kopie der GRASS Location als normalen Ordner: die GRASS Mapset Daten liegen im grassLogo Ordner

Layer aus einem Ordner können mit drag and drop einfach in das GRASS Mapset gezogen werden.

Let’s try to import the roads layer into the grass_mapset Mapset of the SouthAfrica Location.

Go to the Browser, and simply drag the roads layer from the training_data.gpkg GeoPackage file into the grass_mapset Mapset.

../../../_images/grass_browser_import.png

Das wars schon. Wenn man das Mapset erweitert, sieht man den importierten Layer roads. Man den importierten Layer nun wie jeden anderen Layer in QGIS laden.

Tipp

Man kann außerdem Layer direkt aus dem Layerinhaltsverzeichnis in ein Mapset im Browser Bedienfeld ziehen. Damit wird der Workflow stark vereinfacht!

★☆☆ Follow Along: Load data using the GRASS Panel

Wir werden nun die lange Methode zum laden des Layers rivers.shp in das Mapset nutzen.

  1. Wir laden wie gewohnt Daten in QGIS und verwenden den Datensatz rivers.shp (zu finden im Ordner exercise_data/shapefile/).

  2. As soon as it is loaded, click on the Filter box of the GRASS Panel and find the vector import tool by entering the term v.in.ogr.qgis (available under File management ► Import into GRASS ► Import vector into GRASS):

    Warnung

    Es werden 2 ähnliche Werkzeuge angezeigt: v.in.ogr.qgis und v.in.ogr.qgis.loc. Wir verwenden das erste Werkzeug.

    ../../../_images/grass_panel_import.png

    Das v steht für Vektor, in steht für die Funktion Daten in die GRASS Datenbank zu importieren, ogr ist die Softwarebibliothek die zum Laden von Vektordaten verwendet wird und qgis bedeutet, dass das Werkzeug nach bereits in QGIS geladenen Layern sucht.

  3. Nachdem wir das Werkzeug gefunden haben, klicken wir darauf, um es zu öffnen. Wählen Sie den Layer rivers aus der Auswahlbox Geladener Layer und vergeben für die Ausgabe den Namen g_rivers, um Verwechslungen vorzubeugen:

    ../../../_images/grass_tool_selected.png

    Bemerkung

    ★★★ Note the extra import options provided under Advanced Options. These include the ability to add a WHERE clause for the SQL query used for importing the data.

  4. Klicken Sie auf Starten um den Import zu beginnen.

  5. Drücken Sie nach Abschluss des Imports auf den Knopf Ergebnis visualisieren, um den in GRASS importierten Layer in der Karte anzuzeigen.

  6. Schließen Sie zuerst das Importwerkzeug (Klick auf den Knopf Schließen im rechten Bereich neben dem Knopf Ergebnis visualisieren) und danach das GRASS Werkzeuge Fenster.

  7. Entfernen Sie das Original des Layers rivers.

In unserer QGIS Karte wird jetzt nur noch der in GRASS importierte Layer angezeigt.

12.1.4. ★☆☆ Follow Along: Loading Raster Data into GRASS

Rasterdaten importiert man auf dieselbe Weise wie Vektordaten.

Wir werden in das GRASS Mapset den Layer srtm_41_19_4326.tif importieren.

Bemerkung

Der Rasterlayer liegt schon im richtigen KBS WGS 84 vor. Layer mit abweichendem KBS müssen vorher in das KBS des GRASS Mapsets reprojiziert weden.

  1. Laden Sie den Layer srtm_41_19_4326.tif in QGIS

  2. Öffnen Sie erneut das Fenster GRASS Werkzeuge.

  3. Click on the Modules tab.

  4. Search for r.in.gdal.qgis (available under File management ► Import into GRASS ► Import raster into GRASS ► Import raster into GRASS from QGIS view) and double click the tool to open the tool’s dialog.

  5. Geben Sie für den Eingabelayer srtm_41_19_4326.tif und für den Ausgabelayer g_dem vor.

    ../../../_images/g_dem_settings.png
  6. Klicken Sie auf Starten.

  7. Klicken Sie nach dem Abschluss des Prozesses auf Ergebnis visualisieren.

  8. Schließen Sie den Reiter und nocheinmal mit Schließen den gesamten Dialog.

    ../../../_images/g_dem_result.png
  9. Wir können den originalen Layer srtm_41_19_4326.tif nun entfernen.

12.1.5. ★☆☆ Try Yourself: Add Layers to Mapset

Versuchen Sie die Vektorlayer water.shp und places.shp aus dem Ordner exercise_data/shapefile/ in das GRASS Mapset zu importieren. Benennen Sie die Layer wie beim vorherigen Import mit g_water und g_places um einer Verwechselung vorzubeugen.

12.1.6. ★☆☆ Open an existing GRASS Mapset

Wenn bereits ein GRASS Mapset vorliegt, können Sie es einfach in einer anderen QGIS-Sitzung öffnen.

Es gibt verschiedene Methoden, ein GRASS Mapset zu öffnen. Wir werden nun einige untersuchen.

Wir shcließen zuerst das Mapset durch Klick auf die Schaltfläche Schließe Mapset im Fenster GRASS-Werkzeuge.

★☆☆ Follow Along: Using the GRASS plugin

  1. Click on the Plugins ► GRASS ► Open Mapset menu.

  2. Gehen Sie zum Ordner mitt der GRASS Datenbank: Seien Sie vorsichtig! Man muss den übergeordneten Ordner auswählen, nicht den Ordner mit dem GRASS Mapset. GRASS liest alle Locations der Datenbank und alle Mapsets einer Location ein:

    ../../../_images/grass_open_mapset1.png
  3. Wählen Sie die Location SouthAfrica und das Mapset grass_mapset das wir vorher erstellt haben.

Das war’s. Das GRASS Bedienfeld wird aktiv, was bedeutet, dass das Mapset korrekt geladen wurde.

★☆☆ Follow Along: Using the QGIS Browser

Noch einfacher kann ein Mapset mit Hilfe des QGIS Browsers geöffnet werden:

  1. Schließen Sie das Mapset (wenn es noch geöffnet ist) durch Klick auf die Schaltfläche Schließe Mapset im GRASS-Werkzeuge Fenster.

  2. Gehen Sie im QGIS Browser zum Ordner der GRASS Datenbank.

  3. Klicken Sie mit der rechten Maustaste auf das Mapset (das Mapset hat das grassLogo GRASS Icon neben dem Namen). Es werden einige Optionen angezeigt.

  4. Klicke Sie auf Mapset öffnen:

    ../../../_images/grass_open_mapset_browser.png

Das Mapset ist nun geöffent und kann verwendet werden!

Tipp

Nach Klick mit rechten Maustaste auf ein Mapset werden viele verschiedene Optionen abgeboten. Untersuchen Sie auch die anderen Optionen.

12.1.7. Zusammengefasst

Der Arbeitslauf zum Hinzufügen von Daten in GRASS ist etwas abweichend von der QGIS Methode, weil GRASS seine Daten in eine räumliche Datenbank lädt. Trotzdem kann QGIS als Frontend die Verwaltung eines GRASS Mapsets durch die Verwendung von QGIS Layern als Datenquellen für QGIS vereinfachen.

12.1.8. Was als nächstes?

Jetzt wo die Daten in GRASS importiert sind, können wir uns die erweiterten Analysemöglichkeiten ansehen, die GRASS bietet.