|
Geotagging is becoming increasingly widespread. All kinds of internet content (pictures, videos, blogs, Wikipedia articles etc.) are not only being indexed, but they are also tagged with geographical metadata. The increasing use of this information is resulting in substantial changes in the field of internet search. Directories, travel sites and real estate portals are starting to present their points of interests (POIs) on maps. All of them have to face several challenges: constantly changing data, keeping high performance, and providing a user-friendly presentation. The display of geo-points on a map is not difficult due to the services of various map providers. But displaying more than 1,000 POIs can cause problems as website performance significantly declines and geo-points become indistinct clouds.
 Clustering is a solution that Geocubes offers. Geocubes displays the data on the map either as one marker per data point or a graphic with a number representing the number of points in that square. To achieve this, it displays an overlay over the map. Like the underlying map, the geocubes overlay is requested by the client through a JavaScript command. To display a geocubes map, the client fetches the original map from i.e. Google and the geocubes overlay from the geocubes servers. This happens in parallel so there is no loss of speed. The geocubes overlay is then displayed on top of the Google map with functionality provided by the Google API.
Both the map and geocubes overlay are fetched for each zoom or scroll movement in the map. All data in the geocubes overlay come from the geocubes servers. When called by a client, the servers deliver the correct overlay for that particular client's map. Using this technology the performance of the website increases significantly and it is almost unimportant whether 100 or 20,000,000 geo-points need to be calculated. In general a response time of less than 1 millisecond will be achieved. A demo version of more than 1.38 million photos clustered on a Google Map can be found here. The service is free for all users who want to present up to 10,000 geo-points on a Google Map and can be installed by the users on their own. The following example shows a complete integration of geocubes in combination with Google Maps: ERROR [include_code_listing plugin]: File Not Found (/usr/www/users/winwaed/geowebguru/img/2009/geocubes_code.html)
The geocubes API Reference explains how to customize the look and feel of geo-points, or how to add and remove geo-points. All colours and looks of markers, clusters and mouse-over effects are customizable. There are two main designs of the clusters developed: cubes and clouds. The clusters were originally designed as cubes (squares) because the calculation of the geo-points for real-time presentation needs to raster the map in squares. Recently the geocubes developers found an algorithm that is able to calculate clouds in real-time. The cloud design may make the cluster layer less imposing, and leaves more space for a look at the map around the POIs. In addition to real-time presentation, the service provides the ability to add attributes (i.e. categories and keywords) to a geo-point. This enables all of a map's POIs to be searchable, eg as shown on Qmapr. Those features allow a simple local search with a map that might be an alternative to a google-like full text search, i.e. by zip codes for many websites.
Geocubes is currently optimized for Google Maps. More map services like Bing Maps, Yahoo Maps and OpenStreetMap will be supported soon. Finally, an example of a very different use of the clustering service: Twibez. Twibez is a Twitter mash-up that presents tweets in real-time on a Google Map. In fact, Twibez is a fun tool to get a geographical impression of what the world is talking about right now.
What might be clustered next? This article was written by Ines Lemke, Product Manager of geocubes. Geocubes is a service developed by skilldeal AG. The skilldeal AG was
founded in August 2000 in Berlin as an IT Company focused on web based
applications and innovative software solutions.

|