For a map of Wikipedia language prefixes, I need to color a map by a country's value in the 'language' column. I. e. all countries with the same language worldwide should share a color, which they should share with no group that is directly adjacent to them on land.
For a visual explanation of what I want to do, here's a map where I tried the same in GIMP (missing kk.wikipedia.org; warning, 5 MByte):
I would now like to do the same in QGIS for easier handling, plus fully coloring a country in a raster map seems to be impossible (especially for islands).
Unfortunately, QGIS does not even seem to include a plugin to color adjacent polygons differently any more, not to mention such complex shapes. I found the plugin topoColour from QGIS 1.0, which seems to be exactly what I want, but it is of course extremely outdated.
Is there any kind of work flow to achieve the same half-manually? Manually applying the four-color theorem (or six- or eight-color in this case) is quite a daunting task, especially as QGIS doesn't seem to be meant for that. Note that I do want to keep countries separate so I can easily change their data when their language changes or a new Wikipedia is created.
I would not mind an outside tool like the standalone version of topoColour, but that one only colors by adjacency, not shared values like the plugin did. I only have Linux available, though. (Debian unstable.)
Best Answer
At least, somebody took up the issue, and developed a new Map Coloring plugin. You need to enable experimental plugins in the Plugin manager to get it.
The output looks like this, after switching to
Categorized
styling on theCOLORID
field: