Xcelsius 2008 GMaps Plugin Best Practices


The availability of a Google Maps mashup for Xcelsius presents an exciting new avenue for using maps as a navigation paradigm for dashboards. While the Centigon Solutions plugin is a nice step in the right direction, this Beta release requires a few steps before dragging and dropping the component onto the canvas. You can obtain a copy from the Centigon Solutions website:

Down Source Files

Once you add the component to the canvas, you can use the following best practices for each property.

1. Sign up for a Google Maps API key
You need a Google Map API key to use this component. This means the same Google licensing and terms of use apply even inside of Xcelsius. Once you obtain your API key, paste it into your spreadsheet, then bind it within the properties sheet.

*If you try to paste the API key directly into the properties sheet, the map will not work when you publish the SWF. Make sure to bind the API key property to the spreadsheet.

2. Convert your regions or addresses to Longitude/Latitude.
Unfortunately, the first version of the GMaps Plugin does not include links to a Geocode service, which would usually convert addresses, cities, etc. You will need to use comma separated Longitude and Latitude coordinates in each cell. I have provided a few great resources for manually converting addresses or plotting points on a map to obtain the Long/Lat coordinates.

http://maps.huge.info/reverse.htm – Click on the map to plot points and get the Long,Lat points.

http://www.getlatlon.com/- Type in an address to get the Long,Lat point.

3. Format labels using HTML text.
Currently the GMaps component does not provide any text formatting for labels. The component does accept HTML formatted text, allowing for embedded images, hyperlinks, or multiple lines of text for each data point.

I have provided several examples within my sample file to illustrate the flexibility of using concatenated HTML text.

4. Using zoom coordinates
Zoom coordinates provides a nice method for dynamically panning to a specified location, defined as Longitude, Latitude. Because this is a bindable property, you can dynamically zoom to a specific location. I have used this to zoom into each point as I click on them, or to zoom to regions dictated by another selector.

5. Bind a Destination cell
The map component functions as a selector, but only supports the Position insertion method. That means you will need to couple this plugin with Excel logic or a Source Data component to drive functionality. A nice trick that I use was outlined in a previous article, where I use a hidden selector combined with a map to drive dashboard interactivity. Click here to see that article. http://ryangoodman.net/blog/index.php/2008/04/30/using_a_map_to_drive_insert_filtered_row

There is an akward behavior/bug when dragging the GMaps Plugin onto the canvas. For some reason, the component renders as 0 pixels wide and 0 pixels high. The solution is extremely simple but not obvious…You need to click on the component handler and drag it down and right. From there the component functions without any sizing issues.

After using this component, I think there are several features that would make it much more powerful…

Alert color coding for icons
Bindable zoom
More insertion methods in addition to position

All rights reserved Goodman Group LLC