我经常使用映射到一个参数的发散调色板,该参数在靠近中间的某个地方有一个有趣的转折点。
不幸的是,可用的不同调色板(例如来自 C. Brewer 的调色板)似乎都在两个极端而不是中间具有饱和颜色,通常定义为白色或浅灰色。这是一个示例
由文本标签指示的连续参数通过相关曲线的峰值达到最大值的最佳值。
在浅白色或灰色背景上(典型的 ggplot2),我的数据中最有趣的部分变得几乎不可见;我希望它“流行”更多,而两边的值逐渐远离中心,具有不同的色调。有没有好的发散调色板的来源,中间饱和度更高,两边褪色?
这是一个用于说明的示例代码,选择黑色作为中性中间点(我更喜欢不那么戏剧化的东西,但很难让它与两边很好地融合)。
require(RColorBrewer)
grid.newpage()
grid.raster(brewer.pal(7,"PRGn"), 0.25, 0.5, 0.4, 1)
custom <- c(brewer.pal(3,"BuPu"), "black", rev(brewer.pal(3,"BuGn")))
grid.raster(custom, 0.75, 0.5, 0.4, 1)
编辑:澄清一下,我熟悉colorRampPalette
and scale_colour_gradientn
,我寻求建议
1-为此目的选择好的颜色;
2-定义将手工制作的调色板映射到变量的色阶,类似于对参数scale_colour_gradient2
所做的mid
(中心颜色可能不在参数范围的确切中心)