Geodaten mit GMT optisch aufbereiten

Aus LinuxUser 05/2018

Geodaten mit GMT optisch aufbereiten

© Maksym Yemelyanov

Kartograph

Mit GMT erstellen Sie sehr flexibel individuelle Karten, wobei Ihnen das grafische Frontend iGMT hilft, die komplexe Software zu meistern.

Hinter den Generic Mapping Tools oder kurz GMT [1] verbirgt sich eine Sammlung von Programmen zum Anlegen und Bearbeiten von geografischen Karten. Dabei unterstützt die Software sowohl zwei- als auch dreidimensionale Perspektiven. Die erstmals 1988 vorgestellte Werkzeugsammlung unterliegt der GNU LGPL v3 und hat heute einen festen Platz im Kanon der freien Software.

Das GMT-Gesamtpaket umfasst rund 80 kleinere Applikationen, die Sie allesamt über die Kommandozeile nutzen. Zufriedenstellende Ergebnisse erfordern jedoch die Angabe zahlreicher Parameter, und so ist die Gefahr groß, das Resultat durch Fehler bei der Eingabe zu ruinieren. Aus diesem Grund bietet es sich an, die Abläufe über Skripte zu automatisieren.

GMT kann sowohl mit Vektordaten als auch mit Rastergrafiken umgehen. Es speichert seine Ergebnisse in diversen Formaten, was ein Nachbearbeiten in Programmen wie Gimp oder Inkscape ermöglicht. Die GMT-Tools bringen dabei bereits zahlreiche Geo-Informationen mit, wie Küstenlinien, Seen oder Gebirgszüge. Sie liegen in hoher Qualität vor und lassen sich bei Bedarf um eigene Datensätze ergänzen.

Auf die Platte

Sie finden GMT mit den zahlreichen zusätzlichen Paketen bereits in den Repositories nahezu aller gängigen Distributionen, sodass Sie die Software in aller Regel bequem per Synaptic, YaST oder Dnf auf die Festplatte packen. Da das Programm profunde Vorkenntnisse in Geo-Wissenschaften voraussetzt und insbesondere Einsteiger heftig fordert, empfiehlt es sich, die umfangreiche Dokumentation mit herunterzuladen und zu installieren. Daneben finden Sie den Quellcode und weitere Pakete sowie die Dokumentation im Download-Bereich des Projekts [2].

Sehr empfehlenswert zum Verständnis der Arbeitsweise der Programme ist das Tutorial, das die Entwickler als PDF-Datei zum Herunterladen anbieten [3]. Für den schnellen Einstieg geben Sie den gewünschten Befehl einfach ohne jegliche Parameter am Prompt ein. GMT listet dann die einzelnen Optionen mit einer kurzen Erläuterung auf.

Da die Software Datensätze im Postscript-Format speichert, benötigen Sie zudem einen passenden Interpreter. Prüfen Sie also, ob das (ebenfalls freie) Ghostscript auf dem System vorliegt, und installieren Sie es gegebenenfalls nach.

Um direkt qualitativ hochwertige Karten anzulegen, richten Sie auch die in den Repositories mitgelieferten Kartendaten ein. Sie umfassen die vier Pakete gmt-gshhg-full, gmt-gshhg-high, gmt-gshhg-low und gmt-gshhg. Je nach Auflösung weisen die Binärdaten einen Umfang von teils mehr als 30 MByte auf.

Befehle

GMT verarbeitet Daten im Grid-Format. Die Tabelle “Wichtige Befehle” fasst die Kommandos zusammen, die im Alltag häufig vorkommen. Für die Angabe der Koordinaten mithilfe der Befehle psxy und pstext brauchen Sie zudem Listen mit Koordinaten in Form einfacher Textdateien ohne Formatierungen.

Kommando

Erläuterung

pscoast

Anzeige von Land- und Meeresflächen, Grenzen, Küstenlinien und Binnengewässern

psbasemap

Längen- und Breitengrade sowie Angaben zum Maßstab

psxy

Angabe geografischer Koordinaten

pstext

Beschreibung geografischer Koordinaten

psscale

Umsetzen von Höhenangaben aus einer Farbtabelle

grdimage

Höhenrelief aus Datensätzen und einer Farbtabelle anlegen. Die entsprechenden topografischen Daten beziehen Sie aus dem Internet.

Mit dem ebenfalls häufig eingesetzten Befehl grdgradient generieren Sie aus Höhendaten ein schattiertes Relief, während Sie mit grdcut Ausschnitte von Regionen anfertigen. Die Syntax der einzelnen Befehle folgt dabei stets demselben Schema, das Listing 1 darstellt.

Im Laufe der Entwicklung von GMT hat sich die Syntax mehrfach geändert, sodass teilweise einzelne Parameter in neueren Varianten nicht mehr wie erwartet funktionieren. Die Software zeigt Ihnen jedoch nach Eingabe eines Befehls solche veralteten Parameter an und nennt die aktuell vorhandenen Alternativen.

Listing 1

$ gmt Befehl Datensatz Optionen > Datei

Datensätze

Für den Einsatz der Software stehen verschiedene Sammlungen mit Datensätzen im Internet bereit, wie etwa ETOPO1 mit Landhöhen und Meerestiefen. Sie besteht aus zwei ZIP-Archiven mit Landoberflächen und Eisflächen in Grönland und der Antarktis [4].

Die GLOBE-Datensätze beinhalten Landhöhen und stehen ebenfalls als ZIP-Archive für die einzelnen Ausschnitte einer Karte bereit. Alternativ nutzen Sie das Komplettpaket von rund 300 MByte Umfang [5]. Auch die SRTM30V2-Datensätze geben Landhöhen an, jedoch nur solche zwischen 90 Grad nördlicher und 60 Grad südlicher Breite. Sie beziehen diese Daten gleichfalls als ZIP-Archiv [6].

Die Datensätze SRTM3 V2 und SRTM3 V4 umfassen Landfläche zwischen 60 Grad nördlicher und südlicher Breite, wobei SRTM3 V2 in Hochgebirgen einige Lücken aufweist. Die Daten stehen nach Inseln und Kontinenten aufgeteilt ebenfalls als ZIP-Archive bereit [7].

Die SRTM3V4-Daten dürfen Sie nur für den privaten Gebrauch kostenfrei nutzen. Die entsprechenden Archive wählen Sie auf der Webseite in einem Dialog aus und laden sie anschließend herunter [8].

Formatsalat

Mit GMT lassen sich nur Karten in den Formaten GeoTIFF und GRD nutzen. Zum Konvertieren anderer Formate dient das GMT-Werkzeug Xyz2grd. Da die Daten stets nur einen quadratischen Ausschnitt der Erdoberfläche abdecken, eine sogenannte Kachel (“Tile”), müssen Sie beim Konvertieren den jeweiligen Ausschnitt der Karte angeben. Anschließend verbinden Sie gegebenenfalls mithilfe des Befehls grdpaste zwei Tiles.

Zusätzlich brauchen Sie entsprechende Farbtabellen, damit die Software die Höhenreliefs korrekt ausweist. Letztere liegen als einfache Textdateien mit dem Suffix .cpt vor. Im Verzeichnis /usr/share/gmt/cpt/ finden Sie zahlreiche vorgefertigte Tabellen, die Sie nach freiem Ermessen modifizieren dürfen. Dazu öffnen Sie sie mit einem Editor und geben andere Werte ein.

Mithilfe des Befehls makecpt generieren Sie aus einer bereits vorgegebenen Farbtabelle eine neue mit veränderten Höhenangaben. Dabei rechnet die Software die Palette der vorhandenen Datei automatisch um, nachdem Sie entsprechend modifizierte Werte für die Höhe und Differenzierungsschritte eingegeben haben.

Die generierten Karten liefert GMT stets im Postscript-Format, sodass Sie sie mit einem entsprechenden Programm betrachten können, wie etwa Gsview [9]. Alternativ nutzen Sie das bereits etwas angestaubte Programm Gv zum Anzeigen der Dateien. Auch einige Programme zum Betrachten von PDF-Dateien öffnen Postscript-Dateien, wie etwa Atril.

Beispiele

Ähnlich wie beim Layer-Konzept anderer GIS-Programme fügen Sie mit GMT einzelnen Karten Inhalte durch Eingabe der entsprechenden Befehle nacheinander hinzu. Um eine grundlegende Karte zu erhalten, nutzen Sie zunächst den Parameter pscoast. Mithilfe der Sequenz aus der ersten Zeile von Listing 2 erhalten Sie eine einfache Karte von Westeuropa (Abbildung 1).

Listing 2

$ gmt pscoast -R-15/20/30/65 -JM5i -Ba10g5f5/a10g5f5 -X0.5 -Y2.0 -Dc -S100/100/200 -G100/205/100 -W1/0/255/0 -P -K > europa.ps
$ gmt pscoast -R-140/-50/20/65 -JA-95/44/6i -W1/0 -S218/240/253 -G252/245/227 -N1/0.75p -Bg10 -Di -A2000 -K -P > weltkugel.ps

Abbildung 1: Mit nur einem GMT-Kommando generieren Sie eine grundlegende Karte zum angegebenen Ausschnitt, hier für Westeuropa.

Abbildung 1: Mit nur einem GMT-Kommando generieren Sie eine grundlegende Karte zum angegebenen Ausschnitt, hier für Westeuropa.

Dabei bezeichnet der Parameter -R den Ausschnitt, -J die Projektion, -B die Intervalle zum Beschriften, -X und -Y die Verschiebung des Koordinatenursprungs in die jeweilige Richtung, -D die Genauigkeit der Linien, -S und -G die Angaben zu Farben für Gewässer und Landflächen, -W Linienangaben zu den Küstenlinien, -P eine Drehung des Papiers ins Hochformat und -K spätere Ergänzungen in der Postscript-Datei.

Beachten Sie, dass alle Befehlssequenzen mit Ausnahme der letzten beim Bearbeiten derselben Datei stets den Schalter -K beinhalten müssen. Zusätzlich müssen Sie für alle Sequenzen mit Ausnahme der ersten beim Bearbeiten derselben Datei den Schalter -O hinzufügen, damit die Software die Daten überlagernd (“Overlay”) in die Datei integriert. Mit den Befehlen psxy und pstext fügen Sie anschließend in zusätzlichen Segmenten geografische Koordinaten und Text hinzu.

GMT beherrscht zahlreiche Arten der Projektion, wie zylindrische, konische oder azimutale Projektionen. Der Befehl aus der zweiten Zeile von Listing 2 stellt eine Aufsicht auf die nördliche Weltkugel über Nordamerika dar, samt Landesgrenzen und Inseln mit mehr als 2000 Quadratkilometer Fläche. Landflächen und Gewässer erscheinen in unterschiedlichen Farben, sodass man die großen Seen erkennen kann (Abbildung 2). Diese Darstellung dürfen Sie anschließend durch Overlays um weitere Elemente ergänzen.

Abbildung 2: Eine Aufsicht in azimutaler Projektion gelingt mit den Tools aus der GMT-Suite problemlos.

Abbildung 2: Eine Aufsicht in azimutaler Projektion gelingt mit den Tools aus der GMT-Suite problemlos.

(Karto-)Grafisch

Aufgrund der Komplexität tun sich vor allem weniger versierte Nutzer mit der Syntax der Tools schwer. Daher entstanden für verschiedene Plattformen schon bald grafische Oberflächen. Unter Linux dient das in Tcl/Tk geschriebene Programm iGMT [10] als grafisches Frontend für GMT. Es steht unter der GNU GPLv2.

Die Software bildet den kompletten Umfang der GMT-Funktionen ab und lässt sich daher ebenfalls erst nach längerem Einarbeiten wirklich sinnvoll nutzen. Hinzu kommt, dass iGMT seit 2014 faktisch keine Updates mehr erhalten hat. Daher scheitert bei aktuellen Distributionen häufig die Installation aufgrund neuer Bibliotheksversionen.

Einen Ausweg bietet das Unified Geodynamics Earth Science Computing Environment UGESCE. Dabei handelt es sich um ein für Virtualbox angepasstes Image auf Basis von Fedora 14. Es beinhaltet GMT und iGMT inklusive der dazugehörenden geografischen Datenbestände und ist für den sofortigen Einsatz vorkonfiguriert.

Sie erhalten das jeweils rund 5 GByte umfassende Archiv im ZIP-, BZIP- oder GZIP-Format auf der Projektseite [11]. Beim Entpacken des Archivs entsteht ein rund 13 GByte großes VDI-Abbild, das Sie über den Dialog für neue Installationen in Virtualbox integrieren.

Die Größe des Arbeitsspeichers der virtuellen Maschine setzen Sie auf mindestens 2 GByte und wählen als Betriebssystem Fedora in der 64-Bit-Variante. Die virtuelle Maschine leitet Sie nach dem Start und der Eingabe des Passworts seatree in einen Gnome-Desktop der Version 2.32.0 weiter (Abbildung 3).

Abbildung 3: Nicht mehr ganz taufrisch, aber eingängig: die Oberfläche von UGESCE.

Abbildung 3: Nicht mehr ganz taufrisch, aber eingängig: die Oberfläche von UGESCE.

Auf dem Desktop befinden sich bereits zahlreiche Icons zum Start von GIS-Programmen; über den Starter iGMT gelangen Sie nun zum grafischen Frontend für GMT. Die Software weist zwar ein aufgeräumtes Fenster auf, bildet jedoch im Menü durch unzählige Einträge den kompletten Umfang an Funktionen von GMT ab. Daher empfiehlt sich vor dem Start die Lektüre des umfangreichen Tutorials [12].

Die wesentlichen Elemente zum Verarbeiten der vorhandenen Datensätze finden Sie dabei in den Menüs Datasets, Data parameters und Map parameters. Im Menü GMT help finden Sie zudem ausführliche Informationen zu den wichtigsten Befehlen von GMT (Abbildung 4).

Abbildung 4: Zahlreiche Optionen gestalten das Frontend iGMT recht unübersichtlich und erfordern daher etwas Zeit zum Einarbeiten.

Abbildung 4: Zahlreiche Optionen gestalten das Frontend iGMT recht unübersichtlich und erfordern daher etwas Zeit zum Einarbeiten.

Beim Generieren einer Karte gehen Sie Schritt für Schritt vor. Zunächst wählen Sie im Menü Datasets die Datensatz-Dateien, die als Grundlage für die Karte dienen. Anschließend legen Sie im Menü Data parameters fest, wie die Software die Daten anzeigt. Dazu zählen die Auswahl von Farbpaletten und einzelnen Farben, die Größe der Texte für die Legende und Inhalte oder auch Symbole für Merkmale wie etwa Städte, Gebirgszüge oder Flüsse.

Im Menü Map parameters legen Sie die Region fest, die das Programm anzeigt, die Art der Projektion und das Papierformat. Außerdem dürfen Sie hier definieren, ob die Karte Längen- und Breitengrade enthält. Die Software erzeugt ein Shell-Skript, über das Sie dann in einem Durchgang mehrere Befehlssequenzen hintereinander abarbeiten.

Über Script | Show GMT script sehen Sie sich den Inhalt des Skripts an (Abbildung 5). Sie dürfen dabei direkt in der Anzeige einzelne Parameter ändern, ohne wieder den grafischen Dialog dazu aufzurufen. Anschließend klicken Sie oben rechts im Fenster des Frontends auf den Button Map it!. iGMT generiert nun die Karte und zeigt sie im Programmfenster an.

Abbildung 5: Das von iGMT erzeugte Shell-Skript dürfen Sie nachträglich noch bearbeiten.

Abbildung 5: Das von iGMT erzeugte Shell-Skript dürfen Sie nachträglich noch bearbeiten.

Entspricht das Ergebnis Ihren Vorstellungen, dann speichern Sie das Skript über Script | Save script file as…. Anderenfalls korrigieren Sie über den Eintrag Show script errors im Menü Script fehlerhafte Werte.

Fällt Ihnen auf, dass Angaben fehlen, so fügen Sie die gewünschten Parameter nachträglich über die Option Add stuff to the pscoast line im Menü Script ein. In der eingeblendeten Eingabezeile geben Sie die Werte manuell ein.

Fazit

GMT ist eines der mächtigsten Werkzeuge zum Visualisieren von Geodaten. Die extrem flexible Software generiert qualitativ hochwertige Karten und Ansichten in nahezu jeder Größe. Allerdings lassen sich die vor drei Jahrzehnten nach damaligen Standards konzipierten Tools aus heutiger Sicht extrem schwer bedienen. Vor allem die Eingabe der Parameter am Prompt beeinflusst selbst bei kleinsten Fehlern die Anzeige der Karten.

Das grafische Frontend iGMT erleichtert zwar den Umgang mit den Werkzeugen, wurde jedoch seit rund vier Jahren nicht mehr aktualisiert und läuft aufgrund veralteter Abhängigkeiten auf vielen aktuellen Linux-Systemen nicht mehr. Dem interessierten Anwender mit zumindest fortgeschrittenen geografischen Vorkenntnissen bleibt daher nichts anderes übrig, als sich aufwendig in die Syntax und die Parameter einzuarbeiten. Dafür belohnen ihn dann jedoch erstklassige Ergebnisse. 

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 05/2018 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben