ggplot2でExcelライクなヒートマップを作る
Excelでぱぱっとデータを可視化するときに,よくヒートマップ使うんですけれども,これと同じことをggplot2でやってみましたというお話.Excelのヒートマップは,リボンUIで[ホーム]→[スタイル]→[条件付き書式]で設定できて,下のように赤-黄-緑とグラデーションがついて見やすいわけです.
ggplot2でも同じようにしようと思ったら,scale_color_gradient()でもscale_color_gradient2()でもうまくいかず.色指定にrainbow()でも使えばいけるかと思ったら,これもダメ.で,結局scale_color_gradientn()を使って以下のように指定してあげればOK.
p = p + scale_color_gradientn(colours=c('springgreen4', 'yellow', 'red'))
実際にdiamondsデータを使って,軽くプロットしてみたのがこちら.[high]赤-黄-緑[low]とちゃんとグラデーションがついています.これでggplot2でも見やすいカラーグラデーションを使った可視化ができて幸せですね.
p = ggplot(diamonds) p = p + geom_point(aes(x=log(x, 10), y=log(z, 10), colour=price)) p = p + scale_color_gradientn(colours=c('springgreen4', 'yellow', 'red')) plot(p)