2011年8月8日月曜日

散布図の色と形

Cubaris論文はどうにか投稿。投稿寸前になって、図に色々と不備が見つかり、かつ、電子投稿で上手く図が投稿できず一日中悪銭苦闘してしまった。シノニムの論文なので、どこかにはアクセプトされると思うけど、、、今回の投稿先はちょっとずれてるかも。

オンライン版でカラーを無料で載せてくれるところだったらどこでも良いのだけど。

久しぶりにBurmoniscusに取りかかる。散布図を少し修正する必要があったのが、見事に作り方を忘れたのでメモ。

ggplot2で散布図を作る場合の凡例の色と形の指定。

こんな感じのデータセットdataがある。atama(頭幅=体サイズ)をX軸、gaishi(外肢)をY軸にした散布図を作る。


>library(ggplot2) #ggplot関数の読み込み
>qplot(atama,gaishi,data=data,cex=5) #cexは凡例の大きさ

5地点から採集したデータなのだが、どれが何処のデータか不明


>qplot(atama,gaishi,data=data,colour=data$site2,cex=5) #colour=**で、**に対応して色をつける。

色がつく。カラー版だと良いけど、白黒だと分からなくなる。色だけでなく形も変えたい。


>qplot(atama,gaishi,data=data,colour=data$site2,shape=data$site2,cex=5) #shape=**で、**に対応して形を変える。

重複しているところが気持ち悪い。


>p<-qplot(atama,gaishi,data=data,colour=data$site2,cex=5) >p+aes(shape=data$site2)+scale_shape_manual(value=c(1:5)) #+以降で、shapeを指示する。

重複部分も見えるようになった。この図ではあまり分からないが、この色の組み合わせは、少し薄い感じで(明るい色なので:下段)、白黒印刷すると見づらい。


>RColorBrewer::display.brewer.all() #関数の実行
>p<-qplot(atama,gaishi,data=data,colour=data$site2,cex=5) >pp<-p+aes(shape=data$site2)+scale_shape_manual(value=c(1:5)) >pp+scale_colour_brewer(pal="Set1") #colourの色にSet1を使う。

あまり違いないように見えるけど、白黒印刷するとコッチの方が断然ハッキリと見える。ただ、凡例のサイズを大きくする方が効果は大きい。


colourをそのまま使った場合の色の組み合わせ。


Set1を使った場合の色の組み合わせ。


Dark2を使った場合の色の組み合わせ。