更改ggplot图表以进行比较

时间:2016-08-26 10:21:07

标签: r graph ggplot2

我使用从pairwise.wilcox.test和以下脚本获得的p值生成这两个图。我的问题是,为了进行比较,我希望两个图中的不同中断具有相同的颜色。我知道这里的问题是在第一个图形(ROH的总和)中,我在休息时没有任何值(0.001,0.05)。但是我想强制图形在图例中添加这个中断使用与第二张图相同的颜色(平均ROH尺寸)

test.result$value<-cut(test.result$value, breaks=c(-Inf,0.001,0.05,1),right=T)

windows()
ggplot(data = test.result, aes(X1, X2, fill = value))+
ggtitle("Sum of ROH")+
xlab("")+
ylab("")+
geom_tile(aes(fill=test.result$value),color="white")+
scale_fill_brewer(palette="Blues", direction = -1,name="p-Val")+
theme_minimal()+ 
theme(axis.text.x = element_text(angle = 45, vjust = 1, 
                               size = 12, hjust = 1))+
coord_fixed()

first graph

second graph

1 个答案:

答案 0 :(得分:1)

将因子的级别设置为相同。您可以添加不存在的级别。

例如

levels(test.result$value) = c("(-Inf,0.001]", "(0.001,0.05]", "(0.05,1]")

然后将drop = FALSE添加到填充比例中以保留图例中的值。

scale_fill_brewer(palette = "Blues", direction = -1, drop = FALSE, name = "p-Val")