QGIS verfügt über zahlreiche Funktionen zur Netzwerkanalyse. Diese waren in den älteren QGIS-Generationen seit der Version 1.8 bereits vorhanden, jedoch nur über die Python-API und Python-Code zugänglich. Seit der Version 3 stehen nun eine ganze Reihe von Processing-Algorithmen zur Netzwerkanalyse über die Werkzeugkiste zur Verfügung.
Neben den nativen QGIS-Tools zur Netzwerkanalyse (Abb. 1) wie "Kürzester Weg" und "Dienstbereich" gibt es das sehr interessante Plugin "QNEAT" [1] von Clemens Raffler aus Wien, welches ebenfalls auf den QGIS-internen Netzwerkklassen aufbaut, aber deutlich mehr Funktionalität und Ausgabekomfort mit sich bringt.
Das Plugin wird über den Menüpunkt "Erweiterungen" geladen und stellt dann weitere Verarbeitungswerkzeuge in der Werkzeugkiste unter dem Menüpunkt "QNEAT" zur Verfügung.
QNEAT stellt drei Grundalgorithmen zur Verfügung:
Für alle drei Algorithmen gilt, dass jeweils zwischen manueller Eingabe von Punkten oder vorhandenen Punkten eines Layers gewählt werden kann. Zudem können unterschiedliche Ausgabe- und Darstellungsformate ausgewählt werden.
Schauen wir uns nun ein konkretes Beispiel an: In Zeiten von Homeoffice und geschlossenen Restaurants möchte ein Startup mit einem Foodtruck leckeres und frisches Essen anbieten. Ein zentraler Faktor bei der Planung ist die Suche nach optimalen Verkaufsstandorten. Es gilt folgende Frage zu beantworten: Wie viele Menschen können unter der Annahme, dass sie maximal 10 Minuten laufen möchten, meinen Foodtruck in der Mittagspause erreichen (...um 14 Uhr wartet schon der nächste Videocall)? Oder anders herum gefragt: Welche Foodtruck-Standorte kann ich von meinem (Home)-Office aus am schnellsten erreichen?
Dazu verwenden wir den "Iso-Area as Polygon (from Point)"-Algorithmus. Dafür habe ich meinem QGIS-Beispielprojekt bereits einige Layer, so den OSM-Straßen-Layer und einen Gebäude-Layer geladen – beide stehen bei der Geofabrik als Shapefile zum Download bereit [2].
Nach dem Start des Werkzeugs erscheint der klassische QGIS-Werkzeug-Dialog mit einigen zwingenden Parametern und weiteren fakultativen Parametern (Reiter "Fortgeschrittene Parameter"):
Als Ergebnis erhalten wir ein Polygonthema mit Isochronen und zusätzlich ein Raster mit isochronen Zellen. Das Ergebnis definiert den Raum, in dem mein Foodtruck am definierten Standort in maximal 10 Minuten Fußmarsch mit 3 km/h erreicht werden kann, abgestuft nach Zeiteinheiten. Wir sehen sofort, dass die Dreisam, der Fluss, der Freiburg in zwei Hälften teilt, die Erreichbarkeit in Ost-West Richtung streckt, da wir in Nord-Süd-Richtung auf Brücken angewiesen sind. Also starten wir am besten die Analyse noch einmal mit einem alternativen Standort.
Möchte man mehrere potentielle Standorte auf einmal untersuchen, kann man bei QNEAT statt "Iso-Area as Polygon (from Point)" den Algorithmus "Iso-Area as Polygon (from Layer)" verwenden. Dazu braucht es einen Layer mit allen Standorten der Foodtrucks. Um nun die ausgewählten Standorte konkret vergleichen zu können, versieht man den OSM-Gebäudelayer mit einem messbaren Wert: Den Gebäuden vom Typ Apartment (Homeoffice), Schule, Universität oder Office werden unterschiedliche Werte für potentielle Kundenpotentiale zugewiesen. Das Werkzeug "Attribute nach Position verknüpfen" erlaubt es anschließend die Werte für den jeweiligen Standort zu aggregieren und so ein Ranking der Standorte zu erzeugen.
Informationen zu weiteren Möglichkeiten der Standortoptimierung folgen demnächst hier im Blog.
[1]: https://root676.github.io/
[2]: http://download.geofabrik.de/europe/germany.html