x軸は同じだが、y軸のデータ(単位など)が異なるときに
各グラフの x軸 をくっつけて (共有して) 縦に並べて一つの図としたいときがある。
# つまり以下のような図。
# 光度曲線や色の変化を一つの図にしたい!とかを想定。
主に「空飛ぶカボチャ」さんを参考にさせて頂きました。情報に感謝感謝。
[追記] 現在上記のブログはこっちの「もうカツ丼でいいよな」に移っているようです。
上記サイトではいずれのグラフも同じ大きさ。
私の場合、一番上のグラフはちょっと大きくしたい!バージョンにしました。
以下コードをメモ。
==============
mat <- matrix(c(1,1,1,1,2,2,3,3), # グラフのレイアウトを行列で考える(一つの図の大きさの割合) 8,1,byrow=T) # 8x1 として一番上のグラフが最も大きく表示される setEPS() # EPS で吐き出す postscript("mtest.eps", height=5,width =3) par(mfrow=c(3,1)) # 実際のグラフの数を 3x1 として縦に並べる layout(mat) par(mar=c(0,4,0,4)) # 各グラフをぴったり接続するおまじない(上下マージン0) par(oma=c(4,0,4,0)) #====== プロット開始 plot(tan, -pi, 2*pi, axes=F) # とりあえず軸の目盛を消す axis(2) # これでy軸復活 box() # 外枠も復活 plot(cos, -pi, 2*pi, axes=F) axis(2) box() plot(sin, -pi, 2*pi, axes=T) # 最下の図は軸を書く指定 mtext("x", side=1, line=3) # 最後にx軸のラベルを書く dev.off()