In a recent article by Stewart and colleagues in IJHG I stumbled upon interesting technique of visualizing data using ringmaps. Some more information referenced in the article about this technique here and here.

enter image description here


From the article:

Ring maps were created in Adobe Illustrator through the application of a custom script that dynamically drew, distributed, and symbolized all graphic map elements. The values for symbolization were read from a Comma Separated Value (CSV) file that contained all county attribute data. Three county-level ring maps were developed.

Is there a way to automate implementation of a map like that in ArcGIS Desktop 10?

  • 2
    Looks like Illustrator CS4 can be scripted with JavaScript, VBScript and AppleScript. Would be nice if you could get your hands on the script they used to create these ring maps, huh? Mar 2, 2011 at 21:28

4 Answers 4


Recent article in ArcUser offers scripts that seem to be the closest thing. Although it doesn't use box plots, the code might be a good starting point to implement that! (via Matt Artz)

enter image description here


Though this cannot be done with out of the box tools in ArcGIS desktop, I don't believe that this is that hard to code in .NET.

Given some time & effort, once can easily write an ArcGIS addin/extension that creates these kinds of images for the data.

I recently did something similar (It wasn't circular, just box plots on a horizontal ribbon) for Census Data using the ArcGIS Server Flex API. It wasn't that hard and can be easily done using .NET if you wish.


It appears to me that this is primarily an annotation problem, creating and positioning labels and symbols based on attributes. But can it do both at the same time? My algorithm would work along the lines of:

  1. Label features by name, with the labels in that nice, equidistant, circular array.
  2. Create new square features and color based on the required attribute.
  3. Place new features at a distance from the centroid of the polygons as determined by the attribute. Use the angle of the labels to determine the angle of the line from the centroid on which to place the features.
  4. Create the rings around the map based on a classification of the attribute.

It is probably worth noting that I believe that if it is possible to do something on a computer, it is also possible to automate that task on a computer.


Sorry, but you cannot do this out of the box.

However, you can achieve it with custom code! You will need to look at Custom Elements and Custom Feature Renderers examples. You can then also deploy those custom dlls to ArcGIS Server if need be.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.