Wir nennen es Dosenfischen

Geocubes – Auf Karten intelligent clustern

Über Geocubes hatten wir im Podcast bereits berichtet. Nun gibt es weitere Informationen dazu, weshalb ich das Thema nochmal aufbereiten möchte.

Geocubes
Vorgeschichte:
Wer auf einer Karte viele Geo-Punkte darstellen möchte, wird das Problem kennen: Viele Punkte machen die Karte sehr schnell sehr unübersichtlich. Die in hoher Auflösung besonders kleinen Symbole sind kaum einzeln anklickbar. Damit verliert die Karte an Nutzwert und ist für den Nutzer nahezu irrelevant.

Lösung:
Geocubes hat nun eine Möglichkeit entwickelt, sehr charmant, wie ich finde, große Mengen an Punkten zu clustern. Dabei bedient man sich einem zusätzlichen Overlay, also einer weiteren Ebene, die aus den einzelnen Punkten generiert und quasi über die eigentliche Karte gelegt wird. Für jede Bewegung auf der Karte, zoomen oder scrollen, werden sowohl die Karte selbst als auch die Ebene mit den Clustern nachgeladen.
Und dabei ist die Geschwindigkeit, entgegen meiner ersten Befürchtungen, tatsächlich kein Problem.

Karten:
Aktuell funktioniert Geocubes mit GoogleMaps. Weitere Kartendienste sind allerdings in Planung/Arbeit (siehe “5 Fragen an…”).

Integration:
Wer sich mit der Integration von GoogleMaps und der Darstellung von POI auf diesen Karten schon beschäftigt hat, wird sehr schnell ein einfaches Prinzip erkennen. Geocubes wird über ein zusätzliches Script angesprochen, das unproblematisch in bestehenden Maps-Anwendungen einzubinden ist. Des weiteren müssen Funktionsaufrufe inklusive eines API-Keys zur Nutzung von Geocubes eingebunden werden. Wer allerdings bis hierhin gekommen ist, für den stellt auch das kein Problem dar.
Darüber hinaus bietet Geocubes eine fertige PHP Library an, die das Hinzufügen und Entfernen von Punkten ermöglicht.

Kosten:
Für den Dienst gibt es ein überschaubares Lizenzmodell. Eine freie Version ermöglicht die kostenfreie Nutzung bis maximal 10.000 Punkten. Darüber und bis 50.000 Punkten kostet die Einbindung 499 Dollar im Halbjahr. Ab 250.000 Punkten wird ein “individual pricing” angeboten.
Bis zum 28. Februar bietet Geocubes eine komplett kostenfreie Nutzung an. Egal welche Version genutzt wird: Eine Registrierung ist erforderlich. Ähnlich GoogleMaps bekommt man nämlich erst mit der Anmeldung für den Dienst den Api-Key, der für die Integration Voraussetzung ist.

Ich hatte die Gelegenheit, mit Ronny Koch, Entwickler bei der Skilldeal AG, über deren Projekt Geocubes zu sprechen. Ronny zeichnet maßgeblich für diesen Dienst verantwortlich.

Wie bist Du auf die Idee gekommen, Geocubes zu entwickeln?

Ronny Koch: Die ursprünglichen Ideen sind während der Arbeit entstanden. Die zündende Idee, das Ganze weiterzuentwickleln und für unterschiedliche Dienste anzubieten, kam mir allerdings, als ich im Mai letzten Jahres umziehen wollte. Wie sucht man im Internet nach einer Wohnungen? Richtig, man sucht bei einem Immobilienportal über eine Umkreissuche! Man gibt eine Straße und einen Ort ein und bekommt eine Liste von Wohnungen in einem bestimmten Umkreis zurück. Eigentlich ja ganz nett, aber die Straßen in der Liste kennt man ja in der Regel nicht und weiß auch nicht wo sie liegen. Man geht also auf die Webseite eines Kartenanbieters und sucht nach der Straße. Wirklich sehr nervig. Warum kann man diese beiden Sachen nicht miteinander vereinen? Das Problem ist ganz einfach; aufgrund der vielen Wohnungsinserate wäre das Ganze mit einzelnen Geopunkten auf der Karte zu unübersichtlich. Da wir nun schon eine Cluster Lösung programmiert hatten, die auch mit sehr großen Datenmengen zurecht kommt, entschieden wir uns dafür geocubes auf die Beine zustellen und die Lösung als Webservice anzubieten.

Wer ist Zielgruppe dieses Dienstes?

Ronny Koch: Unsere Hauptzielgruppe sind eigentlich alle Webseiten, die ein Problem damit haben, dass ihre Karten aufgrund vieler Geopunkte unübersichtlich und langsam für die Nutzer sind. Wir freuen uns über jeden, dem wir mit unserer Lösung einen Mehrwert bieten können. Wir denken, dass die kartenbasierte Suche im Internet in Zukunft einen immer stärkeren Anteil haben wird, und dass geocubes zu einem komfortableren Arbeiten mit Karten beitragen wird. geocubes ist dafür eine einfach integrierbare Lösung.

Die nutzbaren Karten sind aktuell auf GoogleMaps begrenzt. Wird es in naher Zukunft auch andere Karten geben?

Ronny Koch: Weitere Kartenanbieter sind momentan schon in Arbeit. Die nächsten beiden werden Openstreetmap und Microsofts Kartendienst sein.

Letzte Frage: Wenn ich den Dienst in der freien Version nutze – laufe ich Gefahr, dass irgendwann keine Punkte über den definierten 10.000 mehr dargestellt werden?

Ronny Koch: Momentan bieten wir ja bis zum 28.2.2009 eine kostenlose Version an, mit der man unseren Service schon mal testen kann. Es gibt momentan auch keine Begrenzung der abzuspeichernden Geopunkte. Danach wird es immer noch eine Version geben, die bis zu 10.000 Geopunkten kostenlos ist. Auch wenn man seine 10.000 Punkte verbraucht hat, wird man nicht gesperrt und man kann auch über das Limit hinweg Geopunkte hinzufügen, die auch sofort auf der Karte angezeigt werden. Es wird jedoch so sein, dass man von uns per Mail darauf hingewiesen wird, dass die Freigrenze überschritten wurde. Wenn daraufhin der Kunde kein upgrade vornimmt, müssen wir natürlich irgendwann die überschrittenen Punkte löschen.

14 Kommentare

  1. [dosenfischer.de] Geocubes – Auf Karten intelligent clustern: Über Geocubes hatten wir im .. http://tinyurl.com/c55x5t

  2. Ich oute mich mal, ich verstehe nicht ganz den Sinn, bzw. den Nutzen fürs Geocaching…
    …gibt es eine Beispielkarte, auf der das geocachingrelevant veranschaulicht wird?

  3. Ich hab das gar nicht so sehr mit Geocacher-Augen gesehen, obwohl der geocaching.com-Karte die Cubes auch ganz gut tun würden. Dieses ganze location-based-Zeuch wird immer wichtiger werden. Und da ist Geocubes ein interessanter Ansatz zur Visualisierung, oder?

  4. ich verstehe es ehrlich gesagt auch nicht so ganz. reinzoomen kann man doch in die meisten karten.
    Unverständlich ist mir auch, warum man jetzt ab 499$ zahlen soll, wenn es den Dienst demnächst komplett kostenlos gibt.

    Beispiele, bitte.

  5. @ruhrcacher.
    bis ende februar ist der dienst kostenfrei. danach gilt das lizenzmodell. steht oben auch so im beitrag.

    es geht nicht um das reinzoomen. es geht um das clustern von punkten. was cluster sind, ist aber klar, oder? (ich frag wirklich nur zur sicherheit).
    ein schoenes beispiel fuer eine ungeclusterte karte ist geocaching.de. hier kann eine clustermethode (egal ob geocubes oder eine eigene) helfen, die karte wesentlich uebersichtlicher zu machen. denn in der dort sich oeffnenden zoomstufe ist die anzahl der vielen punkte ja eine null-information (na gut: sie sagt aus, “hey sind hier viele punkte”). erst wenn du weiter reinzoomst, kannst du langsam was erkennen.
    und genau dafuer nutzt man cluster.
    ein anderes beispiel ist das hier. da wird selbst geclustert, d.h. wenn du in dem zoomlevel auf einen punkt klickst, wirst du quasi motiviert, weiter ranzuzoomen. kein schicker cluster – da fetzt geocubes schon mehr und ist im vergleich sehr viel einfacher zu handeln.

  6. @stefan.
    ein teil der antwort auf deine frage steckt schon in der antwort auf den ruhrcacher.

  7. und ein letzter nachsatz: aktionen, wie etwa die kindercacheliste auf rehwald.eu, sind ebenfalls ganz prima fuer sowas geeignet…

  8. Jajaja, ich arbeite ja schon dran (bau da eh grad etwas um um mir die Arbeit ein wenig zu erleichtern…) ist aber nicht so einfach in die bestehende Karte zu integrieren wie gehofft (dank der vielen Scripte, die in der Kindercachekarte eh schon drin sind). Bei einfachen Karten ist es aber nicht das Problem…

  9. Ich fasse das mal an einem Beispiel zusammen. Angenommen wir haben in einem etwas größeren Gebiet X sagen wir mal 5000 Caches (alle Arten). Wenn wir nun eine Übersichtskarte hätten, die genau dieses Gebiet umfasst, dann würden wir ohne Clusterung quasi außer Caches, Icons, Fähnchen, Würfel, was auch immer, nix mehr von der Karte sehen.
    Hier kommen nun die Cluster ins Spiel (Wenn ich das richtig verstanden habe). Das gesamte Gebiet wird in überschaubare Quadrate aufgeteilt, in die man Infos platzieren könnte, z.B. 415 Tradis, 231 Multis, 46 Unknown, blablabla. oder eben 946 Caches.
    Je weiter ich nun in die Karte reinzoome, desto mehr Quadrate verteilen sich auf das Gebiet, ich sehe aber immer weniger davon, weil die Punkte (Caches) pro Kartenausschnitt weniger werden, sprich, ich habe die selben Quadrate, in denen aber jetzt nur noch z.B. 25 Tradis, 12 Multis, usw. steht.
    Das ganze geht so lange, bis es so wenige Caches im Kartenausschnitt gibt, dass auf die Quadrate ganz verzichtet werden kann.
    Wäre das so in etwas korrekt?

  10. so in etwa (nur kuerzer) stehts oben bei vorgeschichte…
    die clusterung wird nach dem geocubes-prinzip nicht nach typen, sondern nach region vorgenommen. d.h. du bekommst keinen “tradi-cluster”, sondern einen “stuttgart-cluster”.

  11. Alles nur eine Frage der Zeit bis Google das ganze für lau anbietet.

  12. @demy.
    kann sein, wobei ich das nicht glaube. allerdings gibt es ja jetzt schon eine reihe von diensten und seiten, die soetwas jetzt benoetigen.

  13. Google Maps unterstützt doch bereits das Clustering!

    Es war eine gewisse Zeit bei geocaching.com zu sehen (Screenshot siehe http://www.geoclub.de/viewtopic.php?p=342883#p342883) und auch in den Erweiterungen ist es möglich (http://www.4lagig-deluxe.de/lpc/lpcindex.html) …

  14. Vergleiche mal mit dem Maptoolkit, zB auf MapTheQ, dann siehst du wie es noch viel besser geht ;)

Trackbacks/Pingbacks

  1. Geocubes - Auf Karten intelligent clustern | PHP-Blog.com - [...] Geocubes - Auf Karten intelligent clustern Related ArticlesBookmarksTags PHP Development ...
  2. Viele Marker und Cluster auf Google Maps Outdoor Touren Karten | ALPSTEIN outdoor geo technology - [...] auf einer Karte anzuzeigen. Wer wissen will, wie das genauer funktioniert, kann das auch bei den Dosenfischern nachlesen. Auch ...

Kommentar absenden

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

Du kannst folgende HTML-Tags benutzen: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>