もしあれば、これには非常に簡単な解決策が必要だと思います。基本的に次のような 2 つの大きなデータフレームがあります。
> data1[1,]
chromosome start end test ref position log2 p.value
13600 Y 10199251 10200750 533 616 10200000 0.2181711 0.00175895
...
> data2[1,]
chromosome start end test ref position log2 p.value
4080 Y 10197501 10202500 403 367 10200000 0.04113596 0.3149926
...
このコードを使用して、2 つのデータフレームを同じグラフにプロットしています。
p <- ggplot() + geom_point(data=subset(data1, p.value >= glim[1]),
map=aes(x=position, y=log2, colour=p.value))
+ geom_point(data=subset(data2, p.value >= glim[1]), map=aes(x=position,
y=log2, colour=p.value))
単一のデータフレームをプロットしていたとき、「p.value」列の値に赤と白のグラデーションを使用していました。この行を使用して:
p <- p + scale_colour_gradient(limits=glim, trans='log10', low="red",
high="white")
中心的な問題は次のとおりです。2 つのデータフレームがある場合、data1 に 1 つのカラー グラデーションを設定し、data2 に別のカラー グラデーションを設定するにはどうすればよいですか? 以前の投稿で、2 つの異なるカラー スケールを使用することはできないと読みました (例: 最初に "low="、2 番目に "high=") が、この場合はまったく同じ種類のカラー スケールです。 (用語を混同していない場合)。構文は明らかに正しくありませんが、次のようなことをしたいと思います。
p <- p + scale_colour_gradient(limits=glim, trans='log10', low="red",
high="white")
p <- p + scale_colour_gradient(limits=glim, trans='log10', low="blue",
high="white")