R中的自定义热图

时间:2011-11-17 01:28:01

标签: r graphics colors heatmap

我需要创建自定义热图,如附图所示。它与传统的热图不同,我希望它使用两个颜色渐变,一个用于正值,一个用于负值。

enter image description here

如附图所示,我想要一种颜色来描绘正值(或理想情况下高于某一阈值)的强度,另一种颜色用于描述负值的强度(或者,在下面,门槛)。

一点背景:我有一个二元选择集,一个选项对于特定范围的数据是首选,而另一个选项是其余数据的首选。我想提供一个视觉辅助工具,它将描述哪种选项/选择对于不同的数据组合更好,但我希望视觉辅助工具还提供一个选项对于该实例的另一个选项具有的“更好”的比例。因此,颜色将告诉选择哪个选项,而颜色的强度告诉该选项与另一个选项相比有多好。

1 个答案:

答案 0 :(得分:9)

这是使用ggplot2的示例:

# sample data
df <- data.frame(expand.grid(x = 1:4, y = 1:4), v = runif(16, -10, 10))

# plot
ggplot(df, aes(x, y, fill = v, label = sprintf("%.1f", v))) + 
  geom_tile() + geom_text() +
  scale_fill_gradient2(low = "blue", high = "red")

enter image description here