Rのデフォルトだとちょっと軸ラベルが離れすぎているし、余白も多めなので調べてみた。
グラフィックスパラメータの mpg で、軸ラベル・軸目盛・軸線のバランスを整える事ができる様だ。
ヘルプには以下のような感じに記述してあった。
軸からラベル、軸から目盛、軸から軸線までのマージンを設定します(単位はmex)。
mgp[1]: 軸からラベルまでのマージン
mgp[2]: 軸から目盛までのマージン
mgp[3]: 軸から軸線までのマージン
デフォルトはc(3, 1, 0)。
mar の方は、
余白を設定できます。
c(bottom, left, top, right) の順に並んでいて、デフォルトは c(5, 4, 4, 2) + 0.1 です。
ちょっと作図してたので流用。
############################## pb <- function(p, a, b) { exp( (a-1) * log(p) + (b-1) * log(1-p) - lbeta(a, b) ) } pv <- seq(0, 1, by = 0.0025) z1 <- pb(pv, 2/3, 1)[!is.na(pb(pv, 2/3, 1)) & !is.infinite(pb(pv, 2/3, 1))] p1 <- pv[!is.na(pb(pv, 2/3, 1)) & !is.infinite(pb(pv, 2/3, 1))] ######## prior ######## par(mar=c(3.2, 3.2, 1.5, 0.5), mgp=c(2.0, 0.7, 0)) par(bty="l") plot( p1, z1, xlim = c(0, 1), type = 'l', lty = 1, col = "#E64B6B", lwd = 6, ylim = c(0, 5), xlab = expression(theta), ylab = expression(paste("p(", theta, ")")), main = "prior density" ) text( 1, max(z1) * 0.95, expression(paste("Beta(2/3, 1)")), pos = 2, offset = 0, cex=.8 ) abline(h = seq(0, 5, by = 1), lty=2, col = "#E9DECA")
TeXで取り込んで枠を付けたら差が分かりにくくなりました、自分でmgpを弄って見た方がはやいかな。
左がmarとmgpを調整したもので、右がデフォルトの状態での出力。
mgp[3]を弄ると、軸が浮きます・・・・