ArcGIS Arcade ist eine vielseitige Skriptsprache, die es ermöglicht, Echtzeit-Analysen in ArcGIS durchzuführen. Basierend auf aktuellen Inhalten aus dem ArcGIS Living Atlas erfahren Sie in diesem Blogbeitrag, wie Sie Arcade-Ausdrücke im Map Viewer geschickt verwenden können, um informative und dynamische Pop-ups mit relevanten Kontextinformationen zu erstellen.
Für die Erstellung ansprechender Webkarten spielen Pop-ups eine zentrale Rolle, da sie Interaktion mit den Karteninhalten ermöglichen und Ihren Visualisierungen Kontext verleihen. In traditionellen GIS-Workflows werden Datenverarbeitung und -analyse meist separat durchgeführt, bevor die Ergebnisse in Form von (Web-)Karten präsentiert werden. Dadurch kann es schnell zur mühsamen Wiederholung von Arbeitsschritten kommen, vor allem wenn Input-Layer häufig aktualisiert werden.
In Zeiten von Web-GIS und ArcGIS Online, in denen regelmäßige Daten-Updates bis hin zu Live-Feeds zum GIS-Alltag gehören, kommt es sehr gelegen, dass Esri mit ArcGIS Arcade eine vielseitige Skriptsprache zur Verfügung stellt, die es neben vielen weiteren Anwendungen ermöglicht, Geoverarbeitungsschritte und Attributberechnungen innerhalb des Map Viewers „on-the-fly“ durchzuführen.
Viele Inhalte des ArcGIS Living Atlas of the World – der weltweit führenden Sammlung zuverlässiger und sofort nutzbarer Geoinformationen – werden laufend aktualisiert. Sie eignen sich daher hervorragend für die Erstellung eindrucksvoller Webkarten zu einer Vielzahl aktueller Themen.
In diesem Blogartikel erfahren Sie, wie Sie Feature-Layer aus dem Living Atlas im Bereich Elektromobilität mit Hilfe von Arcade „im Hintergrund“ verknüpfen und analysieren können und die Ergebnisse dynamisch in ein gemeinsames, leserfreundliches Pop-up einbinden.
Der Workflow mit ArcGIS Arcade und dem Living Atlas
Der Workflow zur Erstellung eines solchen Pop-ups besteht im Wesentlichen aus 3 Schritten:
- Festlegen der Fragestellung und Suche nach geeigneten Feature-Layern im ArcGIS Living Atlas
- Verknüpfen und Verarbeiten der Feature-Layer mit Arcade zur Berechnung neuer Attribute
- Einbinden der Attributausdrücke in informative und leserfreundliche Popups
Step 1: Festlegen der Fragestellung und Suche nach Feature-Layern im ArcGIS Living Atlas
Die hier vorgestellte Webkarte bezieht sich thematisch auf den Stand und die Entwicklung der Pkw-Elektromobilität sowie auf die Verfügbarkeit und Auslastung der öffentlichen Ladeinfrastruktur auf Kreisebene in Deutschland.
Im ArcGIS Living Atlas finden Sie hierfür unter anderem die Feature-Layer „Personenkraftwagen nach Kraftstoffarten in Deutschland“ sowie „Ladesäulen in Deutschland“. Die Layer können Sie entweder direkt im Map Viewer hinzufügen oder zunächst auf der Living Atlas Webseite suchen.
Attribute identifizieren und geeignetes Vorgehen bestimmen
Die ausgewählten Layer werden nun weiter untersucht, um die für die Karte relevanten Attribute zu identifizieren und ein geeignetes Vorgehen für die räumliche bzw. attributive Datenverarbeitung und -analyse zu bestimmen.
Es empfiehlt sich, die Elementdetails zu öffnen, um sich mit dem Geometrietyp, den Metadaten sowie den Datenfeldern und -typen des Feature-Layers vertraut zu machen. Dabei ist auch die Item-ID zu beachten, die später zur Referenzierung des Layers für die Popup-Erstellung verwendet werden kann. Besonders wichtig ist auch ein Blick auf die Attributfelder. Welche Datenfelder wollen Sie in Ihrem Popup verwenden? Welche zusätzlichen Attribute sollen berechnet werden?
Verknüpfungsmerkmale prüfen
Prüfen Sie abschließend, ob die Layer Verknüpfungsmerkmale teilen. Damit können Sie klären, ob eine räumliche Verknüpfung erforderlich ist oder ob ein attributbasierter Filter ausreicht, falls entsprechende Felder vorhanden sind.
Aus der Betrachtung der beiden Layer geht hervor, dass die Ladesäulen Punkt-Features darstellen, die unterschiedlich über die Landkreispolygone des PKW-Layers verteilt sind. Der Erhebungsstichtag des PKW-Layers entspricht dem 1. Januar eines Jahres, was für die zeitliche Filterung später berücksichtigt wird.
Arcade-Attributausdrücke: Fragen für die Pop-up-Erstellung
Für die Pop-up-Erstellung sind unter anderem folgende Fragen interessant, denen wir auf Ebene der Landkreis-Polygone mit Hilfe von Arcade-Attributausdrücken nachgehen werden:
- Wie hoch ist der Anteil von Elektroautos am Gesamt-Pkw-Bestand?
- Wie hoch ist die Auslastung der öffentlichen Ladeinfrastruktur?
- Wer sind die wichtigsten Ladesäulen-Betreiber?
Wichtige Attribute für die Analysen zur Beantwortung dieser Fragen sind: ‘Anzahl Ladepunkte‘, ‘Betreiber‘, ‘Inbetriebnahmedatum‘ und ‘Art der Ladeeinrichtung‘ des Ladesäulen-Layers.
Im Falle des PKW-Layers sind vor allem ‘PKW insgesamt‘ (a0), ‘Plug-In-Hybrid‘ (a5) und ‘Elektro‘ (a6) relevant. Diese entsprechen der Anzahl an PKWs in der jeweiligen Antriebs-Kategorie.
Step 2: Verknüpfen und Verarbeiten der Feature-Layer mit ArcGIS Arcade
Bei der Pop-up-Erstellung bietet Arcade den großen Vorteil, nicht nur auf Informationen des aktuell ausgewählten Layers, sondern auch auf Informationen zusätzlicher Layer in ArcGIS Online und dem ArcGIS Living Atlas zugreifen zu können und für weitere Analysen zu verwenden. Dabei spielt es keine Rolle, ob sich diese Layer in Ihrer Webkarte befinden oder nicht.
Dies geschieht mit Hilfe von FeatureSet-Funktionen. Wie der Name schon sagt, referenziert ein FeatureSet eine (Teil-)Menge von Features eines Feature-Layers. So kann z. B. mit FeatureSetByName() der Zugriff auf Layer in der Webkarte über den Layernamen gesteuert werden, während FeatureSetByPortalItem() ein FeatureSet basierend auf dem ArcGIS Online bzw. Portal Item und dessen ID erzeugt.
In den hier gezeigten Beispielen wird die letztere Variante verwendet, da sie zu mehr Flexibilität bei der Webkarten-Erstellung beiträgt und hilft, Pop-ups mit zusätzlichen Informationen zu versehen, ohne die Karte mit Inhalten zu überfrachten.
FeatureSets können auf verschiedene Arten miteinander in Beziehung gesetzt werden:
- Räumlich: Sie können Geometriefunktionen (z. B. Intersects(), Within() oder Contains()) verwenden, um räumliche Beziehungen zu analysieren.
- Attributiv: Wenn ihre Layer Verknüpfungs-Attribute teilen, können Sie die Filter-Funktion verwenden und ähnlich wie bei einem Join die entsprechenden Features erhalten.
Ein Attributfilter kann Daten schneller zurückgeben als eine räumliche Abfrage und sollte daher, wenn möglich, zuerst verwendet werden.
Wenn Arcade für Sie neu ist und Sie sich einen Überblick über Funktionalitäten und Syntax verschaffen möchten, empfiehlt es sich, die am Ende dieses Beitrags aufgeführten Ressourcen zu nutzen. Besonders die Arcade-Dokumentationsseite von Esri bietet sich als schnelles Nachschlagewerk an.
Im Folgenden werden einige Attributausdrücke vorgestellt, die die Einsatzmöglichkeiten von Arcade zur Erstellung dynamischer und kontextreicher Pop-ups verdeutlichen.
E-Autos pro Ladepunkt
Dieser Ausdruck berechnet das Verhältnis von Elektroautos zu Ladepunkten in einem ausgewählten Landkreis.
Zunächst wird der Filterzeitraum des Ladesäulenlayers festgelegt, indem die Jahreszahl des ausgewählten Pkw-Layer-Features um eins reduziert wird, um Ladepunkte vor dem 1. Januar des gewählten Jahres (Erhebungsstichtag des PKW-Layers) auszuwählen.
- Der Ladesäulenlayer aus dem Living Atlas wird mit FeatureSetByPortalItem() von ArcGIS Online abgerufen und zeitlich (vor dem ausgewählten Jahr) sowie räumlich (innerhalb des ausgewählten Landkreises) gefiltert.
- Die Gesamtzahl der Ladepunkte im Landkreis wird mit Sum() berechnet.
- Schließlich wird das Verhältnis von Elektrofahrzeugen zu Ladepunkten ermittelt und mit Round() auf eine ganze Zahl gerundet und zurückgegeben.
Anteil E-Autos im bundesweiten Vergleich
Dieser Attributausdruck ermittelt den Anteil von Elektroautos in einem ausgewählten Landkreis im Vergleich zum Bundesdurchschnitt.
Zuerst wird das Jahr und der Name des ausgewählten Landkreis-Features ausgelesen. Anschließend wird mit FeatureSetByPortalItem() der gesamte PKW-Layer aus dem ArcGIS Living Atlas abgerufen und nach dem zuvor definierten Jahr gefiltert. Mit der Funktion Average() und einem SQL-Ausdruck wird der durchschnittliche Elektroautoanteil für Deutschland in Prozent berechnet.
Anschließend wird die Differenz zwischen dem Elektroautoanteil im ausgewählten Kreis-Feature und dem Bundesdurchschnitt berechnet. Mit OrderBy() und einem SQL-Ausdruck wird das Feature-Set mit den PKW-Daten nach dem Elektroautoanteil absteigend sortiert. Dann kann mit Hilfe einer for-Schleife und Zählvariablen die Position des Landkreises im Bundesvergleich ermittelt werden.
Zuletzt wird mit Hilfe eines if-else-Ausdrucks eine dynamische Textausgabe basierend auf der Differenz erstellt, die den Anteil der Elektroautos am Gesamt-Pkw-Bestand im bundesweiten Vergleich angibt.
Auslastung der öffentlichen Ladeinfrastruktur im bundesweiten Vergleich
Dieser Arcade-Ausdruck ermittelt die Auslastung der Ladeinfrastruktur im Vergleich zum Bundesdurchschnitt.
Basierend auf dem Jahr des ausgewählten Features, wird das PKW-FeatureSet gefiltert. Anschließend wird die Summe der Elektroautos (E-Autos) und Plug-in-Hybriden in Deutschland für das ausgewählte Jahr berechnet. Dann wird auf den Ladesäulen-Layer aus dem Living Atlas per FeatureSet-Funktion zugegriffen, wobei ebenfalls eine zeitliche Filterung durchgeführt wird.
Die Summen der Ladepunkte sowohl deutschlandweit als auch für den ausgewählten Kreis werden ermittelt. Anschließend wird das E-Auto-Ladepunkt-Verhältnis sowohl auf Kreis- als auch auf Deutschlandebene ermittelt und deren Differenz berechnet.
Der abschließende Bedingungsausdruck ermöglicht eine dynamische Textausgabe, die je nach Vorzeichen der Differenz angibt, ob die Anzahl der Elektrofahrzeuge pro Ladepunkt im ausgewählten Kreis über, unter oder gleich dem Bundesdurchschnitt liegt.
Top-5 Anbieter an Ladesäulen im ausgewählten Landkreis
Mit diesem Attributausdruck sollen die Top 5 Ladesäulen-Betreiber in einem ausgewählten Landkreis ermittelt werden.
- Zunächst wird der Zeitraum für die Filterung der Ladesäulen festgelegt. Ein FeatureSet mit den Ladesäulendaten aus dem ArcGIS Living Atlas wird erzeugt und nach räumlichen (innerhalb des ausgewählten Landkreises) und zeitlichen Kriterien (Inbetriebnahme vor Stichtag) gefiltert.
- Anschließend wird das Ladesäulen-FeatureSet mittels Groupby() nach Betreibern gruppiert und die Gesamtanzahl der Ladepunkte pro Betreiber berechnet.
- Zuletzt werden die Top 5 Betreiber nach der Gesamtanzahl der Ladepunkte mit Orderby() absteigend sortiert und mit Top() auf die ersten 5 Features beschränkt.
Mit Hilfe eines For-Loops werden die Ergebnisse in einem Array gespeichert, wobei der Name des Betreibers mit der Gesamtanzahl der Ladepunkte pro Betreiber kombiniert wird. Abschließend wird das Array mit den Top 5 Betreibern und deren Gesamtanzahl an Ladepunkten zurückgegeben.
Step 3: Einbinden der Arcade-Ausdrücke in informative und benutzerfreundliche Pop-ups
Schließlich können Sie ein gemeinsames Pop-up erstellen. Verwenden Sie ansprechende Symbolbilder und einfachen Text und binden Sie die erstellten Attributausdrücke ein. Versuchen Sie, mehr zu tun, als nur Zahlen in das Pop-up zu übertragen. Um zu einer effektiven Kommunikation der Webkarte beizutragen, empfiehlt es sich, die Ergebnisse sinnvoll zu erläutern.
Falls Sie ein Pop-up mit Informationen aus Layern erstellen, die nicht in der Karte vorkommen, sollten Sie zudem eine Quellenangabe ergänzen, damit die Herkunft der Informationen nachvollziehbar bleibt.
Das finale Pop-up gibt schließlich klar verständliche Antworten auf die zu Beginn gestellten Fragen hinsichtlich des Anteiles der Elektroautos am gesamten Pkw-Bestand, der Auslastung der öffentlichen Ladeinfrastruktur sowie der wichtigsten Ladesäulenbetreibern auf Kreisebene in Deutschland.
In dieser Demomap können Sie das Popup und die eingebetteten Arcade-Ausdrücke weiter erkunden.
Rückblick
Wie im Artikel verdeutlicht wurde, können die sofort verfügbaren, verlässlichen und aktuellen Daten aus dem Living Atlas, kombiniert mit der Flexibilität von Arcade, einen klaren Mehrwert für Ihre Webkarten schaffen.
Sei es als ergänzende Kontext-Layer für eigene Inhalte oder für Webkarten, die ausschließlich auf Living Atlas Layern basieren – dank der dynamischen Ausführung der Ausdrücke bleiben die generierten Pop-ups immer auf dem neuesten Stand, ohne dass zusätzliche Konfigurationen im Falle eines Datenupdates erforderlich sind.
Nutzen Sie jetzt die Möglichkeiten von ArcGIS Arcade und dem ArcGIS Living Atlas, um die Aussagekraft und den Informationsgehalt Ihrer Webkarten zu erhöhen. Erstellen Sie dynamische und ansprechende Pop-ups mit verlässlichen Kontextinformationen!
Weiterführende Ressourcen
- ArcGIS Arcade Dokumentationsseite
- Erste Schritte mit ArcGIS Arcade | Learn ArcGIS
- Mit ArcGIS Arcade auf die Attribute eines anderen Layers zugreifen | Learn ArcGIS
- Enhance your pop-ups using Arcade + Living Atlas
- Pump up Your Pop-ups With Arcade FeatureSets and the Living Atlas (esri.com)
- Zwei Beispiele warum ArcGIS Arcade so hilfreich ist – ArcGIS Blog
Inhalt und Aufbau dieses Blog-Artikels wurden inspiriert von diesem englischsprachigen Blog-Beitrag von Lisa Berry (Esri inc.).