improve colour selection by generating 9 colours from Set1 and wrapping around if necessary, falling back on rainbow if RColorBrewer is not available