Reibungslose Feld-Berechnungen mit dem GISconnector

Im letzten Blogpost habe ich aufgezeigt, wie der GISconnector for Excel Feld-Berechnungen in ArcGIS massiv vereinfacht. Der GISconnector verbindet nämlich auf intelligente Weise die Fähigkeiten von Esri ArcGIS Desktop mit jenen von Microsoft Excel. Wie Sie wissen, vertreiben wir seit September 2014 den GISconnector for Excel exklusiv in der Schweiz. Neben vielen fortgeschrittenen Funktionen können alle Arbeitsschritte, welche die Attributdaten betreffen und die normalerweise mit der Attributtabelle in ArcGIS gelöst werden, mit Excel erledigt werden. Damit hat man alle Möglichkeiten einer modernen Tabellenkalkulations-Software in ArcGIS zur Verfügung. (Eine ausführliche Beschreibung der übrigen Funktionen des GISconnector finden Sie hier.)

Schon im ersten Teil bin ich kurz auf die Benutzerfreundlichkeit der Feld-Berechnung in ArcGIS und der Feld-Berechnung mit dem GISconnector eingangen.In diesem zweiten Teil möchte ich diesen Aspekt vertiefen.

 

Feld hinzufügen

Der Dialog links präsentiert sich, wenn man in ArcCatalog eine neue Feature Class angelegt hat und dieser Felder hinzufügen möchte. Leider sind nicht allen Anwenderinnen und Anwendern alle erlaubten Feldtypen gleich geläufig. Die meisten Desktop-Anwenderinnen und -Anwender sind aber geübt darin, in Microsoft Excel den jeweils geeigneten Datentyp zu konfigurieren.

Um in einer Feature Class ein neues Feld anzulegen, fügt man einfach einer Excel-Tabelle eine weitere Spalte hinzu. Der GISconnector übersetzt den gewählten Datentyp dann intelligent in den passenden Datentyp in Esri ArcGIS.

Bestimmt wollten Sie bei Feld-Berechnungen auch schon vorsichtig sein oder haben einfach die Empfehlung von ArcGIS befolgt und deshalb eine Editier-Sitzung gestartet. Und sich dann prompt geärgert, weil in der Editier-Sitzung einer Attributtabelle keine neuen Felder hinzugefügt werden können. Mit GISconnector können Sie alle relevanten Schritte ins vertraute Excel auslagern – und Berechnungen und Felder-Hinzufügen kommen sich nicht mehr in die Quere.

 

Berechnungsfunktion suchen

Vergleich Field_Calculator_GISconnector

Das Finden der gesuchten Berechnungsfunktion gestaltet sich in Excel in der Regel einfacher als in ArcGIS. Und viele der Python-Funktionen in ArcGIS erscheinen vielen Anwenderinnen und Anwendern wohl relativ kryptisch, während die Bedeutung von Funktionen in Excel direkt unterhalb des Auswahlfensters kurz erläutert wird.

 

Berechnungsfunktion parametrisieren und Fehler beheben

Für das Parametrisieren von Funktionen bietet Excel wahlweise einen Wizard an. Dieser hilft einem mit kontextsensitiven Angaben, die Argumente der Funktion richtig zu befüllen.

Bereits bei der Eingabe kann Excel manche Fehler erkennen und weist deutlich erkennbar darauf hin. Bei Feld-Berechnungen in ArcGIS müssen wir auf diesen Komfortlevel verzichten: Weder führt uns ein Wizard interaktiv durch die Argumente einer Funktion, noch werden wir vor Ausführen einer Berechnung auf Falscheingaben hingewiesen. 

Die Fehlermeldungen von ArcGIS nach dem Ausführen der Berechnungen fallen zudem oft ziemlich allgemein und nicht sehr hilfreich aus. Mit dem GISconnector for Excel stehen diese Komfortfunktionen GIS-Nutzerinnen und -Nutzer endlich in vertrauter Umgebung für GIS-Arbeiten zur Verfügung.

 

Editor

Last but not least muss ich noch den Python-Editor für fortgeschrittene Funktionen in ArcGIS ansprechen. Die Skriptsprache Python verzichtet darauf, Codeblöcke z.B. mit { } und etwa Strichpunkten zu strukturieren. Stattdessen ist der sogenannte Whitespace (üblicherweise Tabulatoren oder Leerzeichen) von grosser Bedeutung. Wenn eine Einrückung nicht die richtige Grösse hat (z.B. ein Tabulator oder 4 Leerzeichen), funktioniert Python-Code in der Regel nicht. Nützlich für das Programmieren von kleinen Skripts wären ausserdem Syntax-Highlighting (also die farbliche Kennzeichnung von Code-Teilen), stetige Syntax-Prüfung, ein vergrösserbares Editor-Fenster und Code-Completion (d. h. das automatische Vorschlagen von Ergänzungen; die Idee also, dass z.B. der Editor „print“ vorschlägt, sobald ich „pri“ getippt habe).

Alle diese Bestandteile sind in besseren Python-Entwicklungsumgebungen wie zum Beispiel PyCharm standardmässig enthalten. Im Python-Editor sind diese Funktionen in ArcGIS leider gar nicht oder nicht benutzerfreundlich umgesetzt: Das Einrücken mit Tabulatoren funktioniert nicht, es müssen Leerzeichen verwendet werden. Syntax-Highlighting, Syntax-Prüfung und Code-Completion sind leider auch nicht vorhanden. Und – für mich eigentlich der schlimmste Aspekt: Das Code-Fenster verwendet eine proportionale Schriftart. Das ist eine Schriftart, wie Sie sie hier im Blog sehen, bei der z.B. „m“ oder „w“ breiter sind als „i“ oder „l“. Was schön ist zum Lesen, ist denkbar ungeeignet um in Python zu programmieren, da die Ausrichtung von Code-Blöcken so noch schwieriger zu sehen ist.

Ein Vergleich des ArcGIS-Python-Editors mit der Darstellung in einer Python-Entwicklungsumgebung:

 

Fazit

Ich hoffe, die gezeigten Vergleiche haben Ihnen vor Augen geführt, wie sehr GIS-Anwenderinnen und -Anwender von der Integration von ArcGIS und Excel mit dem GISconnector profitieren können. Das Hinzufügen, Umbennen und Löschen von Feldern ist so einfach wie man es sich in Excel gewohnt ist. Bei allen Berechnungen kann man sich, falls gewünscht, auf die Unterstützung durch einen intelligenten Wizard mit Kontexthilfe verlassen. Und bei komplizierten Berechnungen verliert man keine Zeit mehr beim Erstellen von Formeln oder mit dem Aufspüren von Fehlern. Und das hier Gezeigte ist nur ein Teil der Funktionen des GISconnectors, welche die Arbeit mit GIS beschleunigen.

Haben wir Ihr Interesse am GISconnector geweckt?

Kontaktieren Sie uns bei Fragen, für eine kostenlose Testversion oder eine unverbindliche Demonstration per Screensharing.

ArcGIS, GISconnector und Excel: Eine mächtige Kombi
ArcGIS, GISconnector und Excel: Eine schlagkräftige Kombination.

 

Einfaches Berechnen in der Attributtabelle mit dem GISconnector

Wie Sie wissen, vertreiben wir seit September 2014 den GISconnector for Excel exklusiv in der Schweiz. Der GISconnector ist eine Software, welche auf intelligente Weise die Fähigkeiten von Esri ArcGIS Desktop mit jenen von Microsoft Excel verbindet. Neben vielen fortgeschrittenen Funktionen können alle Arbeitsschritte, welche die Attributdaten betreffen und die normalerweise mit der Attributtabelle in ArcGIS gelöst werden, mit Excel erledigt werden. Damit hat man alle Möglichkeiten einer modernen Tabellenkalkulations-Software in ArcGIS zur Verfügung. (Eine ausführliche Beschreibung der übrigen Funktionen des GISconnector finden Sie hier.)

ArcGIS, GISconnector und Excel: Eine mächtige Kombi
ArcGIS, GISconnector und Excel: Eine schlagkräftige Kombination.

Welche Erleichterungen ergeben sich aus der Integration von ArcGIS Desktop und Excel? Dieser Frage möchte ich nachgehen indem ich im folgenden die Benutzung des Field Calculators mit der Nutzung von Excel mittels des GISconnectors vergleiche. Ich halte mich bei den Field Calculations dafür an die zukunftsgerichtete Sprache Python, wie sie Esri im Field Calculator anbietet. Der Field Calculator ist ein sehr mächtiges Werkzeug in ArcGIS Desktop, jedoch hat er aufgrund seiner langen Geschichte Eigenheiten, an die man sich gewöhnen muss.

Vergleich der Benutzerfreundlichkeit

Eingabemasken: Spartanisch versus komfortabel

Bereits beim Vergleich der Eingabemasken (links ArcGIS Field Calculator, rechts der Funktions-Dialog in Excel) wird klar, dass Excel seine Funktionen in praktischerer Form anbietet. Im Field Calculator kann zwischen der alten (VB Script) und der neuen Skriptsprache (Python) gewählt werden. Wird zur verwendeten Formel der falsche Parser ausgewählt, wird die Berechnung in der Regel nicht funktionieren. Die eingebauten Funktionen werden nach Datentypen gruppiert angeboten. Sie sind aber weder durchsuchbar, noch werden sie irgendwo erklärt. Schliesslich kann der durch die Benutzerin zusammengebaute Ausdruck vor der Ausführung nicht verifiziert werden .

Vergleich_Field_Calculator_GISconnector_1

Ganz anders in Excel: Die Funktionen sind durchsuchbar und zu jeder Funktionen gibt es einen kleinen Hilfetext zur Erläuterung. Die Funktionen sind auch in feinere Kategorien gruppiert als in ArcGIS. Und ich kann mir sowohl alle Funktionen auf einmal als auch die von mir zuletzt verwendeten anzeigen lassen: Sehr praktisch!

Anwenderfeedback

Wenn ich in ArcGIS dann eine Field Calculation ausführe und ich meinen Ausdruck unglücklicherweise falsch formuliert habe, erfahre ich das erst zur Laufzeit. Leider geschieht das auch mit kryptischen Fehlermeldungen, welche mir wenig Hinweise liefern zur Fehlerkorrektur. Komplexere Berechnungen mit dem Field Calculator zu debuggen ist in ArcGIS wahrlich kein Vergnügen.

Vergleich_Field_Calculator_GISconnector_3

In Excel hingegen kann sich der Nutzer oder die Nutzerin auf Wunsch sich bereits bei der Formulierung einer Berechnung von einem Wizard unterstützen lassen. Dieser erläutert die Formel und die einzelnen Parameter. Der Nutzer erhält auch direkt bei der Eingabe Feedback zu ungültigen Werten oder Fehlern bei der Berechnung – und kann diese sogleich beheben, bevor die Formal auf  die gesamte Tabelle angewendet wird.

Vergleich_Field_Calculator_GISconnector_4

Vergleich von Funktionen

Arbeiten mit Zeichenketten

In der Folge vergleiche ich die Formeln bzw. Python Code Blocks in ArcGIS (links) mit Formeln in Excel (rechts), welche mit der Hilfe des GISconnectors dasselbe bewerkstelligen.

Vergleich_Field_Calculator_GISconnector_Zeichenkette_gross_schreiben

 

Sie haben einen Datensatz mit klein geschriebenen Bezeichnungen erhalten und möchten dies korrigieren? Nicht allzu schwierig, weder mit ArcGIS noch mit Excel. Bei ArcGIS gilt es neben der eigentlichen Funktion natürlich auch die etwas eigentümlich Syntax für die Verwendung von Attributen (nämlich: !Attribut!) zu kennen. Peanuts.

Vergleich_Field_Calculator_GISconnector_Mehrteilige_Zeichnkette_gross_schreiben

Komplizierter wird’s bei mehrteiligen Zeichenketten. Das Beispiel oben zeigt eine von mehreren Möglichkeiten, dies in Python und im Field Calculator zu bewerkstelligen. Beim Konstrukt handelt es sich um eine sogenannte „List Comprehension“. Dies ist definitiv schon leicht fortgeschrittenes Python-Territorium. Nicht jeder Anwender und jede Anwenderin wird sich bis hierhin vorwagen. Mit dem GISconnector bleibt die Aufgabe aber denkbar einfach: Die bereits zuvor benutzte Funktion GROSS2() bewerkstelligt die Änderung an den Zeichenketten komfortabel.

Vergleich_Field_Calculator_GISconnector_Zeichenketten_zerlegen

Für die Zerlegung von Zeichenketten verwendet man im Field Calculator die „Slicing“-Funktionalität von Python. Wenn man sich für Zeichen am Wortende interessiert, muss man die Notation mit negativen Indizes verstehen (oben links im Beispiel). Auch dies bedingt schon ein umfassenderes Verständnis von Python. Mit dem GISconnector hingegen kann man die bekannten Excel-Funktionen LINKS() und RECHTS() benutzen.

Arbeiten mit Zahlen und Zeitangaben

Vergleich_Field_Calculator_GISconnector_Zahlen_runden

 

Zahlen runden geht im Field Calculator mit dem Python-Befehl round(<Zahl>, <Anzahl Nachkommastellen>). Wenn Sie den GISconnector einsetzen, ist das Runden von Zahlen in der Attributtabelle ganz einfach wie gewohnt in Excel möglich.

Vergleich_Field_Calculator_GISconnector_Zeitstempel_einsetzen

Häufig möchte man festhalten, wann man ein Feature erfasst oder verändert hat. Den Zeitstempel kann man mit dem GISconnector mit der Funktion JETZT() einfügen. Das Format – also zum Beispiel „2.3.2015“ oder „Montag, 2. März 2015“ oder „2015-03-02“ – kann man bequem mit dem gewohnten Excel-Dialog einstellen. Deutlich komplizierter ist die Sache leider im Field Calculator: man benutzt das Python-Modul „time“ oder „datetime“ und muss dann auch die sogenannten „Format Strings“ kennen, um das Format des Zeitstempels wunschgemäss zu gestalten.

Vergleich_Field_Calculator_GISconnector_Zufallszahl_erzeugen

Manchmal wünscht man sich eine Zufallszahl in der Attributtabelle. Ich benutze diese zum Beispiel um eine Untermenge von Features zufällig auszuwählen oder auch um die Darstellung von Features zufällig zu variieren. Mit dem Python-Field Calculator verwendet man für die Zusatzzahl das Modul „random“ oder wie im Beispiel „numpy“: Vermutlich können nicht viele GIS-Anwenderinnen und -Anwender das gezeigte Statement direkt so hinschreiben. Mit dem GISconnector könnte es wiederum nicht einfacher sein: ZUFALLSZAHL() liefert genau das Gewünschte!

 

Ich hoffe, das hier Gezeigte hat Ihnen vor Augen geführt, wie sehr GIS-Anwenderinnen und -Anwender von der Integration von ArcGIS und Excel mit dem GISconnector profitieren können. Nie mehr Zeit verlieren beim Formulieren einer komplizierten Berechnung, Foren durchsuchen oder jemanden um Rat bitten! Stattdessen können Sie die komplizierteren Berechnungen direkt in der gewohnten Umgebung von Excel auf die Attributtabelle absetzen. Das ist nur eine der vielen Funktionen des GISconnectors, welche die Arbeit mit GIS beschleunigen.

Haben wir Ihr Interesse am GISconnector geweckt?

Kontaktieren Sie uns bei Fragen, für eine kostenlose Testversion oder eine unverbindliche Demonstration per Screensharing.

 

GISconnector: The beginning of a beautiful friendship between ArcGIS and Excel

As of September 2014, we at Ernst Basler + Partner distribute the application GISconnector for Excel in Switzerland. GISconnector is a software created by Germany-based GI Geolabs. In this article, we highlight the new possibilities that arise through the close interconnection between ArcGIS and Excel. Contact us if you have any questions or if you’re interested in a demonstration in a screen sharing session.

Vertragsunterzeichnung
Stephan Heuel of Ernst Basler + Partner and Matthias Abele of GI Geolabs after signing the partnership agreement.

But first things first: What does GISconnector offer to you? It combines the capabilities of ArcGIS Desktop and Microsoft Excel in a smart way. The best thing about it is that you can do all the attribute-related steps in your GIS workflow seamlessly in Excel. This way, you have the power of a full-fledged spreadsheet software at your fingertips, perfectly integrated within ArcGIS. As a result, working with attribute data is much easier and takes a lot less time. You can find a comprehensive list of GISconnector’s functionality here.

GiSConnector

Working with GISconnector usually follows this pattern: I load a feature class (Geodatabase or Shapefile, whatever floats your boat) as a layer in ArcMap. Using GISconnector I can conveniently export the layer’s attribute data to Excel and create a connection between the two programs in the same process. From this moment on, I can easily swap selections, definition queries and filters between ArcGIS and Excel. The same applies to changes in attribute values and attribute names as well as adding attributes. A toolbar lets you control GISconnector both from within ArcMap and Excel.

GISconnector-Toolbar in Excel
GISconnector toolbar in Excel

Sending selections, data et cetera from one application to the other takes just one click. The image below shows a simple example of GISconnector in action: A feature class of Swiss cantons in ArcMap and the connected attribute table in Excel. I selected some of the southern cantons (marked with turquoise borders) in ArcMap and then sent this selection to Excel as a filter. Thus, Excel only shows the three rows related to the selected map features.

ArcMap und Excel, verbunden durch den GISconnector
ArcMap and Excel linked by GISconnector

Further, the connection between the two applications lets ArcGIS users access Excel’s advanced bag of tricks, ranging from complex functions and AutoFilters to conditional formatting and dynamically updated charts. I will write about such an example in an upcoming article.

Have we sparked your interest in the GISconnector?

Learn more about GISconnector’s functionality from the makers of the software.

Watch a demo video. This one shows how to transfer selections and filters:

 

Test the product free of cost.

Contact us if you have any questions or if you’re interested in a demonstration via screen sharing.

GISconnector: Der Beginn einer wunderbaren Freundschaft zwischen ArcGIS und Excel

Seit September 2014 sind wir von Ernst Basler + Partner Schweizer Vertriebspartner für den GISconnector for Excel . Der GISconnector ist eine Software der deutschen GI Geolabs. Im folgenden Artikel präsentieren wir die neuen Möglichkeiten, die sich durch das enge Verzahnen von ArcGIS und Excel ergeben. Kontaktieren Sie uns bei Fragen oder für eine unverbindliche Demonstration per Screensharing.

Vertragsunterzeichnung
Stephan Heuel von Ernst Basler + Partner und Matthias Abele von GI Geolabs unterzeichnen den Vertrag über die Vertriebspartnerschaft

Doch zuerst: Was bietet der GISconnector? Er verbindet auf intelligente Weise die Fähigkeiten von Esri ArcGIS Desktop mit jenen von Microsoft Excel. Der Clou dabei ist: Alle Arbeitsschritte, welche die Attributdaten betreffen und welche normalerweise mit der Attributtabelle in ArcGIS ablaufen, können mit Excel erledigt werden. Damit hat man alle Möglichkeiten einer modernen Tabellenkalkulations-Software zur Verfügung, perfekt integriert in ArcGIS. Es ergibt sich eine signifikante Erleichterung der Arbeit mit Attributdaten und für die meisten von uns eine grosse Zeitersparnis. Hier findet man eine ausführliche Beschreibung der Funktionalität des GISconnectors.

GiSConnector

Das Vorgehen mit dem GISconnector for Excel sieht grundsätzlich so aus: Ich lade eine Feature Klasse als Layer in ArcMap. Geodatabase oder Shapefile spielt dabei keine Rolle. Mit dem GISconnector kann ich die Attributdaten bequem ins Excel exportieren und mit der Excel-Datei eine Verbindung aufbauen. Von diesem Zeitpunkt an kann ich Selektionen, Definition Queries (Definitionsabfragen) und Filter von ArcGIS nach Excel und von Excel nach ArcGIS übertragen. Das gleiche gilt für Änderungen an den Attributwerten, die Anpassung von Attributnamen sowie die Erstellung zusätzlicher Attribute. Gesteuert wird der GISconnector sowohl in ArcMap als auch in Excel über eine Toolbar.

GISconnector-Toolbar in Excel
GISconnector-Toolbar in Excel

Die Übertragung von Selektionen, Daten etc. von einem Programm ins andere braucht jeweils nur einen Klick. Die folgende Abbildung zeigt als einfaches Beispiel eine Feature Klasse der Kantone in ArcMap und die damit verbundene Tabelle der Attribute in Excel. Die in der Karte blau umrandeten Kantone habe ich in ArcMap ausgewählt und die Selektion danach als Filter an Excel übertragen.

ArcMap und Excel, verbunden durch den GISconnector
ArcMap und Excel, verbunden durch den GISconnector

Die Verbindung der beiden Programme eröffnet der ArcGIS-Nutzerin und dem ArcGIS-Nutzer das gesamte Potenzial der Excel-Trickkiste: Von komplexen Formeln über Autofilter und bedingte Formatierung bis zu dynamischen Diagrammen. Von einem solchen Anwendungsbeispiel berichte ich im nächsten Artikel etwas ausführlicher.

Haben wir Ihr Interesse am GISconnector geweckt?

Informieren Sie sich auf der Website des Herstellers über den gesamten Funktionsumfang.

Schauen Sie sich Demo-Videos an, zum Beispiel das folgende mit grundlegenden Funktionen:

 

Beziehen Sie eine kostenlose Testversion.

Kontaktieren Sie uns bei Fragen oder für eine unverbindliche Demonstration per Screensharing.