A few weeks ago I attended a Boulder-Denver GeoTechs meeting that focused on Geospatial technology in the cloud. Brian Timoney presented on Google Fusion Tables and Chris Helm presented on GeoCommons. Peter Batty, who also presented, has posted links to the demos and other presentations in his Geospatial in the cloud blog.
Inspired by the presentations I decided that I would give Google Fusion Tables and GeoCommons a try with a few constraints in place. I wanted to see how easy they were for a non-GIS geek to use so I used a simple dataset taken off the web, did not allow myself to use any shapefiles or geodatabases and only allowed 45 minutes to create each map. I felt that under these constraints a non-GIS geek could come up with the same result in a reasonable amount of time.
I used the 2010 Human Development Index (HDI) as the dataset for this experiment. The dataset is at the country level and contains only 169 records, which include the country name, HDI ranking, class ranking and link to the country’s profile of human development indicators and ISO3 code. All the information was entered into an Excel file from the above website.
My goal was to create a map that was symbolized on a country level by the four HDI classes, Low, Medium, High and Very High Human Development. I also wanted to provide an information window that would list the country name, HDI ranking and link to the country’s profile of human development indicators page.
Google Fusion Tables
Google Fusion Tables website http://www.google.com/fusiontables/Home
After creating an account I imported a table, the Excel file created above, and added some metadata. The table loaded and I selected to Visualize the table as a Map. This initiated Google to geocode the table and the below map appeared.
Google Fusion Tables produced a map remarkably fast however if you look at the United you quickly realize that there are some geocoding issues since there are 3 country points in the US. After clicking on the US points it was determined that Georgia was coded to the state of Georgia and Iran was coded to the DC area. I was able to correct the geocoding by going back to the table, hovering over the country name, clicking on the globe icon, viewing the precise location the country was geocoded to, entering a search such as “Georgia country” to place a marker in the correct location and finally choosing to use the new location. This process had to be followed for each incorrect point and to determine what points were incorrect each point had to be inspected individually.
Fusion Tables allows data to be symbolized very easily using the Configure Styles window that is accessed by clicking on the link above the visualized map. The window allows points, polygons and lines to be configured into styles. However the geocoding that was performed on the HDI data provided only points and I was unable to symbolize according to the country polygons as planned. The second symbology problem occurred when I attempted to define the classes using the Bucket tab. Only numerical columns were recognized so I had to adjust my Excel table from low, medium, high and very high to 1, 2, 3 and 4. I then had to re-import the table, geocode it and then symbolize by HDI classes.
The final step was configuring the information window. Fusion Tables again allows easy access through the Configure info window link above the visualized map. There are a few templates but with a bit of HTML code the Custom choice can produce the exact info window desired. The question then is how does a non-programmer add the needed code to create the desired info window with a hyperlink? Google Fusion Tables makes that part easy with their help articles and forum posts. I did a search on “info window hyperlink” and found a discussion on Pop-up Balloon Hyperlink with the HTML code needed. The code was added to the Configure Info Window and adjusted for the table being used by adding Available Fields names from the left side of the window. The final info window had all the desired information but was not the most aesthetically pleasing. More time could have been spent designing the info window but as a non-GIS and non-programmer my 45 minutes was about up.
Before the map can be embedded into a website the visibility options have to be setup so others can view the map. This is easy to be done, if you know to complete the step. Click on the Share button in the upper right corner and chose either public or unlisted. Center and zoom the map to the extent you want the final map to be viewed, click the Get embeddable link just above the map, copy the link and paste it into your website.
The final 45min Google Fusion Tables HDI map.
It was amazingly easy to load a table, geocode it and produce a map. However it was also amazingly easy to create a map with incorrect geocoding. Fusion Tables did not provide much of an interface that allowed the user to know how and where things were geocoded and it was cumbersome to verify and correct the geocoding.
The default geocoding is all done by point locations. I could not find an easy way to geocode the HDI data to country polygons without creating a county KML file, importing it and merging the HDI data with the KML file. I was unable to find any public country polygon tables using the search tables option.
The symbology (Configure Styles) window was easy to use however limiting the classes, buckets, to numerical fields might be difficult for non-GIS users to catch onto and understand why their choice was not available.
Fusion Tables does not provide a way to add a ledged to the map. This makes it difficult to convey the meaning of the symbology to the viewer.
GeoCommons website http://geocommons.com/
After creating an account I converted the Excel file created above into a CSV file and uploaded the file. (CSV, Shapefile, KML, RSS, ATOM, GeoRSS, WMS and Tile services are all supported.) GeoCommons then walked me through the steps to geocode the data. I was able to choose to join the data to a country boundary dataset, inspect the attributes of the dataset, select the attribute to use in the join, review how the data was geocoded and correct errors in the geocoding. After the geocoding was saved metadata was entered to describe the dataset. The information on the dataset was then displayed with the default attribute names taken from the CSV file. I was able to change or remove the attribute names and descriptions by selecting the Edit attribute names and descriptions option at the bottom of the page.
By selecting the Map Data button GeoCommons walked me through the steps needed to symbolize the data using their Map Brewer wizard. I selected a visual theme, visualized by HDI class, show the data by colors, picked a classification type and a color ramp. The finished map appeared and allowed for color ramp changes and changes in the drawing order of the layers. A legend could also be viewed.
After viewing the legend I realized that classes 1, 2, 3, and 4 did not provide the viewer with enough information to convey the meaning of the symbology. I was not able to change the description in the legend so I decided to use the HDI ranking to visualize the map. I went back to the dataset without saving the map and made the same selections as before in the Map Brewer but chose to visualize by HDI rank. Once the map was drawn I changed the classification to manual within the layers window and picked classes that corresponded to the HDI classes (1-42, 43-85, 86-127 and 128-170). This produced a legend that was much more descriptive to the viewer.
GeoCommons did not offer the option of customizing the information window. The information window contained all the attributes that were setup in the dataset. The only way to alter the information in the window was through the Edit attribute names and descriptions option when viewing the dataset. There was no way to alter the order the attributes appeared and I was unable to add a hyperlink to the country profile pages.
It is easy to get the code to embed the map into a website. Simply click on the Details button and choose Embed this map into your website. Then copy the link and paste it into the website.
The final 45min GeoCommons HDI map.
GeoCommons was incredibly easy to work with. Like Fusion Tables only numerical data could be used to symbolize the map. A legend was provided for the map but there was no way to customize it. The largest problem was the inability to do any customization in the information window. There was no way to change the order of items or add a hyperlink to the country profile pages.
Google Fusion Tables and GeoCommons offer amazing features, require no software and allow users to quickly produce interactive maps that can be embedded into their websites. GeoCommons was by far more user friendly and less intimidating for the non-GIS user. A quality map could be produced quickly, however not being able to customize the legend and information window did limit the information that can be expressed to the map viewer.
Google Fusion Tables geocoded and created a map quickly, however much time needed to be spent verifying the geocoding. For a non-GIS user this has the potential for the user to create a nice looking map that is very inaccurate. Only point locations can be used without importing a KML file to join to. Fusion Tables offers the customization of the information window, which allows the information to be expressed to the viewer in a clear defined way. However some HTML programming is required. No ledger is provided for the map, which leaves the map viewer confused as to the meaning of the symbology.
Someone with little to no GIS and programming experience can easily use GeoCommons to create a quality map. With a bit of GIS and programming skills a more precise map can be created using Fusion Tables. If GeoCommons added the ability to customize the information window and legend they would be my choice for both the GIS and non-GIS users.