用ggplot2调整比例热图

时间:2012-12-24 08:59:14

标签: r ggplot2 heatmap rescale

我是R的完全新手,请原谅我,如果这已被问过无数次了。我正在尝试使用heatmap Rtsvsname sam1 sam2 a 0.2 0 b 0.1 0.05 c 0.3 0.06 heatmap

这是一个例子。

heatmap

抱歉,我无法发布我得到的图表(因为我是新手)。

当制作图表时,比例介于0到1之间(数据在a <- read.table(file = "name", sep ="\t", header =T) a.m <- melt(a) a.m <- ddply(a.m, .(variable), transform, rescale = rescale(value)) (p <- ggplot(a.m, aes(variable, transposons)) + geom_tile(aes(fill = rescale), colour = "yellow") + scale_fill_gradient(low = "yellow", high = "darkgreen")) 中重新调整为0到1之间),但是我的文件中没有任何大于0.3的值,因此我想要知道{{1}}中是否可以有0到0.3之间的比例。我不确定我是否在这里提供足够的详细信息,如果我需要在此处提供更多详细信息,请告诉我。

基本上我正在使用

{{1}}

任何帮助都非常感谢,提前感谢。

1 个答案:

答案 0 :(得分:3)

默认情况下,我们有?rescale

    rescale(x, to = c(0, 1), from = range(x, na.rm = TRUE))

这就是你的值介于0和1之间的原因。只需指定min和max为?rescale

a.m <- ddply(a.m, .(variable), transform,  
                    rescale = rescale(value,to=c(0,0.3))))