ggplot2: 条件により色を変更する
プロットのドット(点)の色は、geom_point() の中で、 color を指定することで任意の色に変更できます。 色は、 "black", "red" など文字列で指定するか、16進数などの数値で指定します。
g + geom_point(color = "#969696")
下記は、グレイを指定したものです。
条件に応じて変更
ボルケーノプロットは、遺伝子の発現が増減した様子を表すものです。ここでは、下記の3つの条件を考えます。
変動なし: p-value > 0.05 または、|logFC| < 1
変動あり(増加): p-value < 0.05 かつ logFC > 1
変動あり(減少): p-value < 0.05 かつ logFC < -1
ボルケーノプロット上のドットをそれぞれの条件ごとに、グレイ、赤、青で塗り分けたいと思います。
ggplot2 では、複数の geom_point() を続けて記述することで、重ね合わせができます。例えば、 g + geom_point(変動なしデータ) + geom_point(増加データ) + geom_point(減少データ)のようなイメージです。
実際のコードは、下記のようになります。まず、フィルタ関数を用いて、条件ごとのデータを準備しておきます。
non_deg <- de_result %>% filter(PValue > 0.05 | abs(logFC) < 1)
up_deg <- de_result %>% filter(PValue < 0.05 & logFC > 1)
down_deg <- de_result %>% filter(PValue < 0.05 & logFC < -1)
geom_point() の中で、 data = として、これらのデータを指定します。それぞれの geom_point() で、異なる色を指定して塗り分けることができます。
g + geom_point(data = non_deg, color = "#969696") +
geom_point(data = up_deg, color = "#FC9272") +
geom_point(data = down_deg, color = "#9ECAE1")
さらに、前回の補助線を加えると、最終的には下記のようなイメージになります。
この記事が気に入ったらサポートをしてみませんか?