我正在绘制一个分类数据集,并希望使用独特的颜色来表示不同的类别。给定一个数字n
,我怎样才能在R中获得n
个最独特的颜色?谢谢。
最佳答案
我加入了 RColorBrewer 包中的所有定性调色板。定性调色板应该提供 X 个最独特的颜色。当然,将它们混合到一个调色板中也具有相似的颜色,但这是我能得到的最好的(74 种颜色)。
library(RColorBrewer)
n <- 60
qual_col_pals = brewer.pal.info[brewer.pal.info$category == 'qual',]
col_vector = unlist(mapply(brewer.pal, qual_col_pals$maxcolors, rownames(qual_col_pals)))
pie(rep(1,n), col=sample(col_vector, n))
其他解决方案是:从图形设备中获取所有 R 颜色并从中采样。我删除了灰色阴影,因为它们太相似了。这给出了 433 种颜色
color = grDevices::colors()[grep('gr(a|e)y', grDevices::colors(), invert = T)]
pie(rep(1,n), col=sample(color, n))
有 200 种颜色n = 200
:
pie(rep(1,n), col=sample(color, n))
关于r - 如何在R中生成一些最有特色的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15282580/