見出し画像

ggplot2: 補助線を書き入れる

ggplot2 を使って作成したプロット図に追加して、 y = 1 などの補助線を書き入れる方法を紹介します。

前回作成したボルケーノプロットの横軸 (x軸) は、logFC となっています。変動している目安として、logFC < -1 または、logFC > 1 が用いられることが多いので、それを補助線で示すことを考えます。

追加したい補助線は、 x = -1 の線と、 x = 1 の線になります。

geom_vline() を追加

縦の直線を追加する関数は、 geom_vline() です。引数で、線の位置を指定します。今回は、 x = -1 と x = 1 の位置に追加したいので、 xintercept = c(-1, 1) となります。また、直線のタイプを選ぶことができます。点線を指定する場合は、 linetype = "dotted" を指定します。

g + geom_point() +
  geom_vline(xintercept = c(-1, 1), linetype = "dotted")

geom_point() にプラス (+) で続けて、 geom_vline() を指定します。

x = -1 と x = 1 の補助線を追加したプロット

これで、x = -1 の縦線より左にあれば、 logFC < -1 であり、逆に、 x = 1 より右側にあれば、 logFC > 1 を満たしていることが分かりやすくなります。

正確には、logFC は log2 fold-change つまり、fold change を log2 変換したものです。 log2(2) = 1 なので、logFC > 1 は、2倍以上という意味です。逆に、 log2(0.5) = -1 なので、logFC < -1 は、半分以下になっていることを示します。

geom_hline() を追加

一方、横の線は、 geom_hline() を使って表示できます。縦軸で、p-value < 0.05 であることを示したいので、-log10(0.05) = 1.3 つまり、 y = 1.3 のラインを指定します。

g + geom_point() +
  geom_vline(xintercept = c(-1, 1), linetype = "dotted") +
  geom_hline(yintercept = 1.3, linetype = "dotted")

geom_vline() に、さらにプラスで続けて、 geom_hline() を指定します。(どちらを先に書いても良いです。)

x = -1, x = 1 に加えて、y = 1.3 を追加したプロット

これにより、y = 1.3 のラインより上にあり、かつ、x = 1 のラインより右にある点は、 「p-value < 0.05 かつ logFC > 1」 であることを提示できます。



この記事が気に入ったらサポートをしてみませんか?