It's very simple the colors are picked randomly by this map's script. If I manually change a color for a tribe/family (which is possible) it will change automatically other colors and not only like only the yellow will go to the current black.
There is a possibility to give each tribe a color manually but i prefer not to do it because:
1)Seems that people do care what color they have so I don't want arguments starting on this.
2)If I set all the colors manually when a new tribe appears you won't see it at all (with no color) until manually changing the color settings again.