QGIS-Tipp: Objekte nach Abstand einfärben

Screenshot: MeinTestprojekt [2], das Zentrum bei der Pauluskirche (Einfärbung nach Abstand siehe Beschreibung)

Innerhalb der #30DayMapChallenge hat eurojam eine coole Visualisierung veröffentlicht, nämlich abhängig von der Entfernung zu einem Punkt die Objekte einzufärben. Ich habe versucht, es nachzuvollziehen und … es klappt. Für alle, die diesbezüglich ein bisschen Hilfe brauchen, hier das Ganze mal etwas untersetzter. Ich habe die Gebäude des OSM-Projektes, hier der Layer “osm_buildings_test_2398” genutzt, dazu einen Layer “center” mit der Spalte “name” und dem Eintrag “Test”. Dann lautet der adaptierte und entscheidende String für die Füllfarbe:

color_hsv(scale_linear(distance( geometry(get_feature('center','name','Test')),$geometry),0,1000,100,0), 100, 100)

Aus dem Layer “center” wird also in der Spalte “name” der Eintrag “Test” gesucht. Zu dessen Geometrie (get_feature)wird die Entfernung (distance) zur aktuellen Gebäude-Geometrie ($geometry) des Datensatzes der Gebäude ermittelt und entsprechend dem aktuellen Abstand eingefärbt (colore_hsv) über einen linearen Farbverlauf (scale_linear). So einfach … Alles klar? Schaut Euch die Syntax der Funktionen get_feature, distance, scale_linear und color_hsv an, es wird klarer, versprochen 😉
Um es einfacher nachvollziehen zu können, könnt Ihr gern mein Testprojekt [2] nutzen.

Animation: Vier Center-Standorte und das eingefärbte Ergebnis

Danke eurojam, hier der Original-Tweet [1]:

[1] … https://twitter.com/27aea577f17d4c4/status/1591081607108390913
[2] … https://www.geoObserver.de/Download/QGIS_Center_Building_Demo1.zip

2 Gedanken zu „QGIS-Tipp: Objekte nach Abstand einfärben

  1. Wenn man das ganze dynamisch haben möchte, kann man statt des Punkt-Objektes z.B. auch die aktuelle Mausposition verwenden.

    Statt “geometry(get_feature(…))” benutzt man dafür im Ausdruck “@canvas_cursor_point”.
    Wichtig dabei, man muss in den Layereigenschaften (Reiter “Darstellung”) “Layeraktualisierungsintervall in Sekunden” anhaken (und z.B. auf 0,1 stellen).

  2. Pingback: QGIS-Tipp: Haltestellen-Erreichbarkeit visualisiert | #geoObserver

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert