ggplot2のレジェンドをguidesで少しだけ改造
ggplot2の備忘録。
Rにて数万というサンプルを散布図にするとレジェンドを書き換えたくなることがある。
サンプルデータを用意する。
PNGに保存するときはコメントアウトを外してください。
.df<-function(mx, my, z) data.frame(x=rnorm(20000, mx), y=rnorm(20000, my), z) #png(file="sample%01d.png", width=1600, height=1200, res=200, pointsize=24) p<-ggplot(rbind(.df(-1,1, "Kobe"), .df(0,-1,"Osaka"), .df(1,1,"Tokyo")))
まずは普通に描画。
p+geom_point(aes(x=x, y=y, color=z))
点がでかすぎるので小さく。
p+geom_point(aes(x=x, y=y, color=z), size=0.2)
色がこすぎるので透過に。
p+geom_point(aes(x=x, y=y, color=z), size=0.2, alpha=0.2)
レジェンドが見えなくなっているのでguidesでデフォルトを上書きする。
p<-p+geom_point(aes(x=x, y=y, color=z), size=0.2, alpha=0.2) p+guides(color=guide_legend(override.aes=list(alpha=1, size=6))) #dev.off()
詳しい使い方はSet guides for each scale.を参照してください。