アメリエフの技術ブログ

Amelieff Staff Blog

カラフルなマンハッタンプロットを描く

SNP解析、GWASの結果の図示に広く使われるマンハッタンプロット。
これをカラフルにする方法、色の例をご紹介します。

マンハッタンプロットの作図には、統計解析ソフトRの、CRANパッケージ qqmanを利用すると簡便です。

install.packages("qqman")  #パッケージインストール。初回のみ
install.packages("data.table")

library("qqman")   #ライブラリ読み込み
library("data.table")  

dat.raw <- fread("filename.assoc", stringsAsFactors=F,header=T)     #"filename.assoc"には関連解析後のタブ区切りファイルなど
dat.ylim <- c(0, max(10, max(-log10(dat.raw$P) * 1.04, na.rm=TRUE)))    

png("manhattanplot.png")      #.pngに描画
manhattan(dat.raw, ylim=dat.ylim, genomewideline = -log10(1e-07))
dev.off()

manhattan()には他のグラフと同様、色を指定するオプションcolがあります。
何も指定しないと、基本設定(col = c("gray10", "gray60") )である灰色の濃淡2色のくりかえしで描画されます。
f:id:Fuku-I:20180511163740p:plain:w150

ここで色を指定すると、染色体ごとにSNPのドットの色を好きに変えることができるんです。
例えば、col = c("#ba55d3", "#ff69b4", "yellow", "yellowgreen") と指定すると、4色のくりかえしに。

png("manhattanplot.png")
manhattan(dat.raw, ylim=dat.ylim, genomewideline = -log10(1e-07), col = c("#ba55d3", "#ff69b4", "yellow", "yellowgreen"))
dev.off()

f:id:Fuku-I:20180511163834p:plain:w150 かわいい。

22色指定して、論文にあるように22対の染色体を異なる色にすることもできます。↓
col = c("#E60012", "#FFF100", "#009944", "#00A0E9", "#1D2088", "#920783", "#E5004F", "#F39800", "#8FC31F", "#0068B7", "#009E96", "#E4007F", "#333333", "#D7004A", "#1B1C80", "#E48E00", "#009140", "#999999", "#86B81B", "#0097DB", "#8A017C", "#D7000F")
f:id:Fuku-I:20180511180758p:plain:w150

重要な領域を目立つ色にすることもできますし、
ポスターやプレゼンテーションスライドの色調と合わせてもおしゃれですね😃