Problem des Handlungsreisenden

powered by Google Maps

Ein verwirrender Artikelname für folgendes Problem: Ich habe viele Adress-Datensätze, die ich mir gerne alle auf einer Karte als Markierungen anzeigen lassen will.

Manche Auto-Navis unterstützen dies zwar, nur muss man da kompliziert jede Adresse einzeln eintippen. Einfacher wäre es doch, wenn man einfach eine Excel-Tabelle importieren könnte. Und das geht dank Google Fusion und Google Maps online recht flott, und ist auch noch kostenlos.

Aber erst einmal sollten die Daten in einem Format vorliegen, mit dem Google Fusion am besten arbeiten kann. Am einfachsten ist es, wenn die Adressdaten alle in einem Feld stehen. Sind die Felder in Excel aber getrennt, also z.B. auf Straße, Plz, Ort, Land aufgeteilt, dann kann man diese mit der Verketten-Anweisung in einer neuen Spalte/Zeile zusammenfügen, die Formel könnte so aussehen: =VERKETTEN(B2;“, „;C2;“ „;D2). Die Zeichenfolgen „, “ und “ “ sind deshalb wichtig, weil sonst die Zelleninhalte ohne Abstand aneinandergereiht werden. In diesem Fall werden also die 3 Spalten Straße, Plz und Ort zu einer zusammengefasst.

Nun die Daten als CSV abspeichern („Datei/Speichern unter“ und als Dateityp „CSV (Trennzeichen-getrennt)“ auswählen, und am Google-Konto anmelden. Dort erstmal zu Google Docs hüpfen und dann Erstellen->Tablelle wählen. Im nächsten Dialog (ab nun auf Englisch) die CSV-Datei auswählen/hochladen und den „Separator character“ auf „Other“ setzen und das Semikolon in das entsprechende Feld eintragen, Encoding bleibt UTF-8.

Ein Klick auf Next, und schon sollte man sehen, ob die Spalten richtig erkannt wurden, falls nicht, muss man sich mit dem „Separator character“, also dem Spalten-Trennzeichen, herumspielen. Im Normalfall sollte das nun aber passen, und man wählt die Spalten ab, die nicht benötigt werden. Dann weiter -> Finish, und schon sollte die Tabelle angezeigt werden, und das Beste: die Adressdaten sind gelb markiert! Dies sagt uns nämlich, daß Google Fusion diese Daten als Adressen erkennt, welche uns nun mit einem Klick auf Visualize/Map auf der Google Map dargestellt werden. Dies kann je nach Menge etwas dauern, für etwas über 100 Adressen dauert die Berechnung bei mir ca. 20-30 Sekunden.

Die importierten Adressen auf Google Maps dargestelltNun kann man kontrollieren, ob die angegebenen Adressen auch wirklich richtig erkannt wurden, denn ab und zu gibt es doch ein paar Ausreisser, vor allem wenn Adressen z.B. im Format „Wiener Straße 12/8“ eingegeben sind. Diese kann man wieder über Visualize/Table editieren (in dem Fall das „/8“ löschen) und wieder auf der Map überprüfen.

Wenn mir nun noch jemand von euch verrät, wie man die Punkte automatisch zu der schnellsten/kürzesten Route verbinden kann, und diese Daten in ein Navi oder Smartphone bekommt, dann wäre das in der Überschrift angesprochene Problem keines mehr.

 

2 comments

  1. René sagt:

    Hi Alex,

    voller Freude habe ich deinen Artikel gefunden der nämlich genau das beschreibt wovor ich auch öfters stehe. Der Wermutstropfen kam dann am Ende als ich sah das keine Lösung gepostet wurde …
    Bist du denn selber schon ein wenig vorangekommen bei der Problemlösung?! Durch die neuen APIs könnte man das vielleicht selber angehen, denn der Algorithmus ist ja bekannt, das Problem ist ja „bloß“ die Anzahl der anzusteuernden Stationen…

    beste Grüße

    • Hallo Rene. Leider kann ich dir nicht helfen, da ich mich mit diesem Problem nicht weiter beschäftigen musste (und auch nicht wollte). Aber wenn mir eine bessere Lösung über den Weg läuft, werde ich es hier veröffentlichen.
      Liebe Grüße
      Alexander

Schreibe einen Kommentar

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