Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I'm using ArcGIS 10, and I have a layers of 2010 Census blocks, block groups, and tracts. There are thousands of polygons in these layers. I want to color them so that each is distinct from its neighbors, but all I can figure out is how to give each one a distinct color. The color of each polygon doesn't really matter; I just want to easily distinguish each from its neighbor by color, rather than with a border.

Is that a thing that grown-up GIS people do, or is that something you only see in an elementary school map of the 50 United States?

share|improve this question
(+1) Technically, ArcGIS does provide distinct colors, because it can select them randomly among (I believe) a palette of 2^24 and therefore the chances of two neighbors getting exactly the same color are low. This suggests you really want to fix a small number of readily differentiable colors and assign them so no neighboring polygons get the same color. There's an algorithm to do this for five or more colors when all polygons are connected and simply connected. (Manifold has a built-in procedure to five-color any polygon layer :-).) –  whuber Jun 8 '12 at 18:02
There is also a plugin in QGIS called "topocolour" that provides this capability. You might be able to look at their code and build something yourself if you cannot find a canned utility in ArcGIS. –  RyanDalton Jun 8 '12 at 18:16
I haven't tested this, and therefore hesitate to offer it as a reply, but a search for "color" under "ArcGIS Desktop" on ESRI's ArcScripts page returns links to a five-coloring geoprocessing tool –  whuber Jun 8 '12 at 18:19
I wrote the aforementioned topocolour plugin! I think it might struggle with thousands of polygons though, to work out all the adjacencies. I've also recently written a version in R just in case anyone wants to colour maps in R that way. I won't touch ArcGIS though! –  Spacedman Jun 8 '12 at 18:53
"Four colors suffice" (someone had to say it). –  barrycarter Jul 9 '12 at 15:47
show 3 more comments

2 Answers

Have you considered http://colorbrewer2.org/ I seem to remember a plugin for ArcGIS or QGis being available.

share|improve this answer
Please see Kevin's comment to the other reply. –  whuber Jul 25 '12 at 15:24
add comment

you could apply symbology classification on a unique identifier/GWID field.

share|improve this answer
This won't guarantee a unique color across neighboring polygons –  user3461 Jun 21 '12 at 20:02
It should be since the RGB value can range from 0 to 255 for each, meaning there is a vast array of combinations for the R, B, and G values. so technically your won't have the same hue, unless you have well over a billion unique records. –  GISdork Jul 31 '12 at 17:37
This technique won't guarantee that two adjacent polygons have dissimilar colors in order "to easily distinguish each [polygon] from its neighbor". Even though the RGB combinations are unique they may look very similar. So if two neighboring polygons are assigned similar values, it won't be easy/possible to tell them apart. Please see whuber's first comment on the original question. –  user3461 Jul 31 '12 at 18:13
add comment

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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