Rのヒストグラムhist()関数で、x軸、y軸を枠に密着させて描画する方法

Rのヒストグラム関数hist()をデフォルトの設定で描画させると、軸とグラフが枠から離れているのが気になる場合に解決する方法
RのヒストグラムはExcelよりも簡単にできて便利です(Excelも最新版ではヒストグラムを簡単に作れるようになりましたが)が、Rのデフォルトのヒストグラムの設定では、x軸、y軸共にがグラフから離れているのが微妙。小さい度数が軸に埋没しないメリットはありますが、x軸、y軸の位置をグラフの枠に密着させて描画させる方法は以下の通りです。

デフォルト設定でhist関数を実施します。x軸、y軸ともに離れていて見た目いまいち。
hist(iris[,1], ylim=c(0,40), xlim=c(0,10), col="salmon")
Rのデフォルト設定のヒストグラム

グラフの軸をヒストグラムの棒グラフと接する位置に描画させるには、par()でxaxs="i",yaxs="i"を指定します。ついでにlas=1を指定して目盛り数値の向きを整えます。
par(xaxs="i", yaxs="i", las=1)
hist(iris[,1], ylim=c(0,40), xlim=c(0,10), col="salmon")
軸の位置を改善したRのヒストグラム設定

Rのデフォルトの設定では、グラフ数値目盛りが軸から離れすぎているので、mgpパラメータを使って数値軸の位置をグラフに近づけます。
設定する三つの数値は、1つめが軸ラベルの位置、2つ目は目盛り数値の位置、3つ目は軸の位置を指定しています。また、グラフ外周の枠をbox()関数で追加しました。
par(mgp=c(2, 0.6, 0))
par(xaxs="i", yaxs="i", las=1)
hist(iris[,1], ylim=c(0,40), xlim=c(0,10), col="salmon")
box()

軸の位置と文字の位置も改善した設定のヒストグラム

この記事へのコメント