Preciso de um conjunto grande (20 ou mais) de cores contrastadas e facilmente visualmente distinguíveis para colorir conjuntos de dados diferentes em um gráfico científico (o conjunto de cores não deve incluir branco ou preto e as cores devem ser o mais brilhantes possível).
A plotagem é gerada programaticamente e deve ser incluída em uma apresentação que será exibida usando um projetor.
Existem conjuntos de cores prontos para essa tarefa (eu preciso de cores como um conjunto de valores RGB)?
Ou talvez exista algum algoritmo que gere esse conjunto de cores programaticamente (eu uso o Wolfram Mathematica para geração de plotagem)?
PS O enredo em si pode parecer, por exemplo, semelhante a este:
color
resource-recommendations
information-graphics
contrast
presentation-design
Alexey Popkov
fonte
fonte
Respostas:
Graças ao ótimo trabalho
P. Green-Armytage (2010): Um alfabeto de cores e os limites do código de cores. // Cor: Design e Criatividade (5) (2010): 10, 1-23
(e ao usuário ohadsc que o referenciou !) agora conheço pelo menos três conjuntos de cores prontas de contraste máximo que contêm não menos de 20 cores (mas ainda tenho valores RBG explícitos apenas para uma delas):
1) O conjunto de 22 cores de contraste máximo proposto por Kenneth Kelly no trabalho:
K. Kelly (1965): Vinte e duas cores de contraste máximo. // Eng. Cor, 3 (6)
Informações específicas (citando P. Green-Armytage): "A ordem das cores na lista de Kelly foi planejada para que houvesse um contraste máximo entre as cores de um conjunto, se o número necessário de cores sempre fosse selecionado em ordem a partir do topo. <.. .> Kelly cuidou das necessidades das pessoas com visão de cores com defeito. As nove primeiras cores seriam maximamente diferentes para essas pessoas e também para as pessoas com visão normal. Essas nove cores também são facilmente distinguíveis pelo nome da cor ".
Informações adicionais (citando P. Green-Armytage): "O ISCC criou o Comitê de Projeto 54 com a intenção de atualizar o trabalho de Kelly. No entanto, o comitê decidiu que, pelo que estavam tentando fazer, não poderiam melhorar. Conjunto de cores de Kelly. "
2) O conjunto de 25 cores sugeridas por Robert e Ellen Carter no trabalho:
Robert C. Carter, Ellen C. Carter (1982): Conjuntos de cores de alto contraste. // Appl. Optics, 21 (1982) 2936-2939.
Detalhes (citando P. Green-Armytage): "Carter e Carter fazem referência ao trabalho de Kelly e verificam sua suposição de que a facilidade com que duas cores podem ser discriminadas depende de quão distantes as cores estão no espaço de cores. Dos espaços de cores disponíveis na época, eles escolheram o CIE L u v * como o mais apropriado para o estudo. <...> Eles descobriram que a capacidade das pessoas de identificar cores corretamente diminuía rapidamente quando a distância entre as cores era inferior a 40 unidades CIE L u v * ". Em seu trabalho, eles apresentam um conjunto de 25 cores separadas por pelo menos 51,6 unidades CIE L u v *.
3) O conjunto de 26 cores para o Projeto Alfabeto Colorido, sugerido por Paul Green-Armytage na obra citada "Um alfabeto colorido e os limites do código de cores". Este conjunto de cores foi projetado para uso com fundo branco. Trigêmeos RGB deste conjunto são:
{240,163,255},{0,117,220},{153,63,0},{76,0,92},{25,25,25},{0,92,49},{43,206,72},{255,204,153},{128,128,128},{148,255,181},{143,124,0},{157,204,0},{194,0,136},{0,51,128},{255,164,5},{255,168,187},{66,102,0},{255,0,16},{94,241,242},{0,153,143},{224,255,102},{116,10,255},{153,0,0},{255,255,128},{255,255,0},{255,80,5}
.ATUALIZAÇÃO 1
4) Há outro excelente artigo sobre o assunto:
Zeileis, Hornik e Murrell (2009): Escapando RGBland: Selecionando Cores para Gráficos Estatísticos // Estatística Computacional e Análise de Dados Volume 53, Edição 9, 1 de julho de 2009, Páginas 3259-3270
Este artigo contém um belo conjunto de 26 cores distintas na página 11:
Trigêmeos RGB deste conjunto são:
{2,63,165},{125,135,185},{190,193,212},{214,188,192},{187,119,132},{142,6,59},{74,111,227},{133,149,225},{181,187,227},{230,175,185},{224,123,145},{211,63,106},{17,198,56},{141,213,147},{198,222,199},{234,211,198},{240,185,141},{239,151,8},{15,207,192},{156,222,214},{213,234,231},{243,225,235},{246,196,225},{247,156,212}
.ATUALIZAÇÃO 2
O usuário Tatarize sugere em seu blog :
5) Um conjunto de 64 cores maximamente diferentes :
6) Um dicionário de cores com 269 cores maximamente distintas de todas as cores anteriores (usei essa função para obter trigêmeos RGB a partir dos códigos hexadecimais):
Aqui estão os códigos hexadecimais da postagem do blog vinculada (lista completa de 269 códigos hexadecimais do alfabeto colorido de Tatarize, escondidos no histórico de alterações para facilitar a leitura).
7) 256 cores distintas .
ATUALIZAÇÃO 3
Aplicativos da web potencialmente úteis:
Cores para cientistas de dados. Gere e refine paletas de cores idealmente distintas.
Gerando cores visualmente distintas.
ATUALIZAÇÃO 4
8) Lista de 20 cores simples e distintas de Sasha Trubetskoy:
"Fiz uma lista de cores fácil de usar, otimizada em todas as mídias; não sem pequenos compromissos, é claro, como conversões CMYK inexatas. O principal problema é escolher cores" puras "(por exemplo, 100% magenta) ou seguras na Web leva a paletas de cores desajeitadas, perturbadoras e desequilibradas. Esta é a minha tentativa de uma paleta agradável que funcione bem para diagramas de rede ou de estilo de trânsito ou para dados categóricos ".
fonte
"#023fa5", "#7d87b9", "#bec1d4", "#d6bcc0", "#bb7784", "#8e063b", "#4a6fe3", "#8595e1", "#b5bbe3", "#e6afb9", "#e07b91", "#d33f6a", "#11c638", "#8dd593", "#c6dec7", "#ead3c6", "#f0b98d", "#ef9708", "#0fcfc0", "#9cded6", "#d5eae7", "#f3e1eb", "#f6c4e1", "#f79cd4"
.print("'" + "', '". ...: join('#'+''.join(f'{int(c):02x}' for c in col.split(',')) for col in colors.strip('{}').split('},{')) + "'")
.A combinação de "brilhante", "facilmente distinguível" e "20 e mais" é complicada. Lembra-me de "Nosso trabalho é rápido, barato e de alta qualidade. Escolha dois." Eu acho que você pode sair "brilhante" da mistura e apenas dizer "contrastado". Isso torna o resumo mais simples de alcançar, e acho que o levará aonde você quer estar.
Não conheço esse tipo de jogo de improviso, mas eis como eu faria isso usando o Photoshop:
Crie um documento em branco no modo de cor (RGB ou CMYK) que deseja usar. O RGB está correto para todas as impressoras de mesa e para exibição na tela ou projeção. Use CMYK apenas se você precisar de valores CMYK reais.
Escolha 5 cores básicas espalhadas uniformemente pela roda de cores. Na configuração Matiz, isso significa 0, 60, 120, 180, 240 e 300. Esses seriam seus pontos de partida. (Como alternativa, substitua as amostras padrão pelo conjunto de Windows ou Mac disponível no menu flutuante do painel Amostras e use o sétimo do último ao segundo do último.)
Para cada Matiz, selecione 5 ou 6 níveis de brilho e saturação que oferecem cores finais facilmente distinguíveis.
Ao encontrar cada um, adicione-o às suas amostras.
Se você estiver configurando esses dados para serem gerados de forma programática, basta escolher qualquer um dos valores adequados ao modelo de cores com o qual você estará lidando. Se você precisar usar o Illustrator ou o Flash para os pontos, adicione estas etapas:
Exclua todas as outras amostras (clique com a tecla Alt / Opt pressionada para remover) para que tudo o que resta seja o desejado.
Salve as amostras usando "Salvar amostras no Exchange ..." no menu desdobrável Amostras. Isso salva um arquivo .ASE que pode ser carregado no Illustrator, InDesign ou em qualquer outro aplicativo da Adobe.
Espero que ajude.
[Adição após pergunta expandida]
As cores base em hexadecimal são: 0xff0000 (vermelho puro), 0xffff00 (amarelo), 0x00ff00 (verde), 0x00ffff (ciano), 0x0000ff (azul) e 0xff00ff (magenta). Ao fazer algumas experiências, achei o amarelo puro muito próximo do branco demais para ser totalmente útil para seus propósitos, e o azul exigia um ponto de partida diferente porque é visualmente escuro. De cada cor de base, você pode fugir com 4 tons. Como você também pode usar o cinza, isso permite uma matriz 7x4 do que eu consideraria cores bastante úteis, dadas as suas restrições (e presumida falta de acesso ao Photoshop ou a um aplicativo semelhante). Pegue uma calculadora e derivar os valores decimais, se você precisar deles! :-)
Com exceção de amarelo, azul e cinza, seus pontos de partida são as cores puras. Reduza os valores hexadecimais de ff para b0, 87 e 55 para seus quatro tons.
Para azul, o "brilhante" é b0b0ff e os tons são 8484ff, 4949ff e 0000ff.
Para amarelo: e4e400, baba00, 878700 e 545400 funcionarão e, para os valores em cinza, faça com que os bytes de baixa ordem sejam iguais aos altos e médios em cada caso.
Meu gráfico rápido e sujo destes (menos os cinzas) é assim:
fonte
#ff0000 #b00000 #870000 #550000 #e4e400 #baba00 #878700 #545400 #00ff00 #00b000 #008700 #005500 #00ffff #00b0b0 #008787 #005555 #b0b0ff #8484ff #4949ff #0000ff #ff00ff #b000b0 #870087 #550055 #e4e4e4 #bababa #878787 #545454
mas eu não seria necessariamente usá-los nessa ordem ...{255,0,0}, {228,228,0}, {0,255,0}, {0,255,255}, {176,176,255}, {255,0,255}, {228,228,228}, {176,0,0}, {186,186,0}, {0,176,0}, {0,176,176}, {132,132,255}, {176,0,176}, {186,186,186}, {135,0,0}, {135,135,0}, {0,135,0}, {0,135,135}, {73,73,255}, {135,0,135}, {135,135,135}, {85,0,0}, {84,84,0}, {0,85,0}, {0,85,85}, {0,0,255}, {85,0,85}, {84,84,84}
.Uma boa abordagem é o esquema de cores Solarized de Ethan Schoonover.
A partir da descrição:
Eu acho que não é apenas um bom esquema de cores, mas também extensível e tem uma boa teoria por trás disso.
fonte
Há uma falha fundamental e que está tentando traçar 20 coisas diferentes em um visual. Isso é muita confusão visual, e adicionar 20 cores só vai adicionar a essa confusão.
Eu consideraria repensar o visual geral, se puder. Talvez o segmente em 4 visuais de 5 cores cada, misture e combine sobreposições, etc.
O Tufte é o recurso essencial para aprender mais sobre a plotagem de dados das maneiras que melhor comunicam o objetivo:
http://www.edwardtufte.com/tufte/
fonte
Você pode tentar este seletor de cores. Ele foi projetado para mapas, mas também o usamos para tabelas e gráficos. Boa sorte!
http://colorbrewer2.org/
Max 12 cores embora. desculpa. :)
fonte