【问题标题】:Calculate distinguishable color palette in R在R中计算可区分的调色板
【发布时间】:2014-10-24 20:01:39
【问题描述】:

我正在使用 R 创建一个包含 20 个不同组的图,并且我想对每个组进行不同的着色。我也熟悉 Matlab,在使用该程序时,我发现“distinguishable_colors”matlab 文件最适合区分不同的颜色1。我看过“rainbow”、“rainbow_hcl”和“brewer”调色板,但没有一个比“distinguishable_colors.mat”好。我想知道是否有人知道 R 中的一个函数会创建与“distinguishable_colors.mat”matlab 函数相同的调色板?

【问题讨论】:

标签: r matlab colors


【解决方案1】:

MatLab 中的该函数似乎在 RBG 空间中迭代搜索彼此最大不同的颜色集。我不知道 R 中有这样的事情,但我们可以非常接近。

我们可以找到适合我们需要的几种颜色的调色板(可能使用http://colorbrewer2.org/)并使用这些种子颜色为任意数量的颜色创建colorRampPalette

pal<-colorRampPalette(c('#e41a1c','#377eb8','#4daf4a','#984ea3','#ff7f00'))
N=10
plot(rnorm(N),rnorm(N),pch=16,col=pal(N),cex=3)

【讨论】:

  • for( N in 2^( 2:13 ) ){ print( plot(rnorm(N),rnorm(N),pch=16,col=pal(N),cex=3) ) ; readline() }
【解决方案2】:

R 包Polychrome 为具有多种(20 种或更多)颜色的定性调色板提供了工具。它带有两个小插图,提供provided palettescreating palettes 的工具。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-01
    • 2021-01-10
    • 1970-01-01
    • 2016-01-15
    • 1970-01-01
    • 2015-05-29
    • 1970-01-01
    • 2021-01-19
    相关资源
    最近更新 更多