17.5. Mehr Algorithmen und Datentypen

Bemerkung

In dieser Lektion werden wir noch drei weitere Algorithmen ausführen. Wir werden lernen wie man andere Eingabetypen verwendet und Ausgaben so konfiguriert, dass sie automatisch in einen vorgegebenen Ordner gespeichert werden.

Für diese Übung benötigen wir eine Tabelle und einen Polygonlayer. Wir werden einen Punktlayer basierend auf Koordinaten in der Tabelle erstellen und dann die Anzahl der Punkte in jedem Polygon zählen. Wenn Sie das QGIS-Projekt zu dieser Lektion öffnen, finden Sie eine Tabelle mit X und Y Koordinaten aber keinen Polygonlayer. Keine Angst, wir werden den Layer noch mit einem Geoalgorithmus erstellen.

Als Erstes werden wir mit Hilfe des Algorithmus Punktlayer aus Tabelle erzeugen einen Punktlayer aus den Koordinaten in der Tabelle erzeugen. Sie wissen schon wie man das Suchfeld benutzt, es sollte also nicht schwer sein, den Algorithmus zu finden. Klicken Sie doppelt darauf und es erscheint der folgende Dialog.

Der Algorithmus generiert, ähnlich wie in der letzten Lektion, genau eine Ausgabedatei. Er benötigt drei Eingaben:

  • Eingabelayer: die Tabelle mit den Koordinaten. Sie sollten hier die Tabelle aus dem Übungsordner verwenden.

  • X und Y Felder: diese zwei Parameter gehören zum ersten Eintrag. Das Auswahlfeld zeigt die Felder an, die in der gewählten Tabelle vorhanden sind. Wählen Sie das Feld XCOORD für den Parameter X-Feld und das Feld YCOORD für den Parameter Y-Feld.

  • Ziel KBS: Da der Algorithmus keine Eingabelayer verwendet, kann kein KBS auf Basis der Eingabe vergeben werden. Statt dessen muss das KBS der Koordinaten in der Tabelle manuell ausgewählt werden. Klicken Sie auf das Auswahlfeld, um die QGIS KBS Auswahl zu öffnen. Wählen Sie EPSG:4326 als Ziel KBS. Wir benutzen dieses KBS, da die Koordinaten in der Tabelle in diesem KBS vorliegen.

Der Dialog sollte in etwa so aussehen.

../../../_images/points_from_table.png

Klicken Sie jetzt auf die Starte Schaltfläche, um den folgenden Layer zu erhalten (Sie müssen unter Umständen die Zoomstufe ändern, um alle neu erstellten Punkte zu sehen):

../../../_images/points.png

Als nächstes benötigen wir den Polygonlayer. Wir werden mit dem Algoritumus Gitter erzeugen ein regelmäßiges Polygongitter erzeugen. Im folgenden Dialog sind die Algorithmus Parameter enthalten.

../../../_images/graticule_dialog.png

Warnung

Die Optionen sind in neueren Versionen von QGIS einfacher; man muss nur die Minimal- und Maximalwerte für X und Y eingeben (vorgeschlagene Werte: -5.696226,-5.695122,40.24742,40.248171)

Die zur Erstellung des Gitters erforderlichen Eingaben sind alle Zahlen. Wenn man einen numerischen Wert eingibt, hat zwei Möglichkeiten: die direkte Eingabe in das Eingabefeld oder der Knopf auf der rechten Seite der den folgenden Dialog öffnet.

../../../_images/number_dialog.png

Der Dialog enthält einen einfachen Rechner, mit dem Sie Ausdrücke wie 11 * 34,7 + 4,6 eingeben können, das Ergebnis wird berechnet und in das zugehörige Feld des Parameter Dialogs eingetragen. Es sind außerdem Konstanten und Werte aus anderen Layer verfügbar, die verwendet werden können.

In diesem Fall wollen wir ein Gitter erstellen, das die Ausdehnung des Eingabepunktlayers umfasst. Wir müssen die Koordinaten des Punktlayers verwenden, um die Koordinaten des Zentrums des Gitters und seine Breite und Höhe zu bestimmen. Versuchen Sie es selbst, mit ein bisschen Mathematik, der Hilfe des Rechners und der Konstanten aus dem Eingabepunktlayer.

Wählen Sie Rechteck (Polygon) im Feld Gittertyp.

Wie beim letzten Algorithmus müssen wir auch das KBS angeben. Wählen sie wie vorher EPSG:4326 als Ziel KBS aus.

Am Ende sollte der Parameterdialog in etwa so aussehen:

../../../_images/graticule_parameters.png

(Es ist besser einen Abstand bei Breite und Höhe hinzuzufügen: Horizontaler Abstand: 0,0001, Vertikaler Abstand: 0,0001, Breite: 0,001004, Höhe: 0,000651, Zentrum X: -5,695674, Zentrum Y: 40,2477955) Das X Zentrum ist ein bisschen knifflig: -5,696126+(( -5,695222+ 5,696126)/2)

Drücken Sie Starte und Sie erhalten den Gitterlayer.

../../../_images/graticule.png

Der letzte Schritt ist das Zählen der Punkte in jedem Rechteck des Gitternetzes. Wir werden dazu den Algorithmus Punkte in Polygon zählen verwenden.

../../../_images/count_points.png

Damit haben wir das gewünschte Ergebnis erreicht.

Bevor wie die Lektion beenden, folgt noch ein kleiner Tipp, der das dauerhafte Speichern von Daten vereinfacht. Wenn Sie alle Ausgabedateien in einem gegebenen Ordner speichern wollen, müssen Sie den Ordnernamen nicht jedes Mal neu eingeben. Gehen Sie statt dessen zur Schaltfläche Optionen der Verarbeitungswerkzeuge. Damit wird der Einstellungsdialog geöffnet.

../../../_images/config.png

In der Gruppe Allgemein finden Sie den Eintrag Ausgabeverzeichnis. Geben Sie hier den Ordner Ihrer Ausgabedateien an.

../../../_images/output_folder.png

Wenn Sie nun einen Algortihmus starten, reicht der Dateiname anstelle des gesamten Pfades aus. Im obigen Beispiel würde die Eingabe von graticule.shp als Ausgabepfad dazu führen, dass das Ergebnis unter D:\processing_output\graticule.shp gespeichert werden würde. Man kann weiterhin einen vollständigen Pfad verwenden, wenn man das Ergebnis in einem anderen Ordner speichern möchte.

Probieren Sie den Gitter erzeugen Algorithmus selbst weiter aus. Verwenden Sie verschiedene Gittergrößen und Gitterarten.