[R]viewports’ grid in ggplot2

R の ggplot2 でレイアウトをグリッド分割し、各グリッドに対してプロットする方法。


pushViewport(viewport(layout = grid.layout(2, 3)))

print(qplot(speed, dist, data=cars),           vp=viewport(layout.pos.row = 1:2, layout.pos.col = 1))
print(qplot(log(speed), log(dist), data=cars), vp=viewport(layout.pos.row = 1,   layout.pos.col = 2:3))
print(qplot(speed, dist, data=cars),           vp=viewport(layout.pos.row = 2,   layout.pos.col = 2))
print(qplot(log(speed), log(dist), data=cars), vp=viewport(layout.pos.row = 2,   layout.pos.col = 3))

Hadley Wickham の “Ggplot2: Elegant Graphics for Data Analysis (Use R!)“(Springer Verlag) ではCH.8 “Polishing your plots for publication” Sec 8.4.2 “Rectangular grids”(P.153) に記載がある。
本によると、デフォルトは各セルの幅は固定だが、width, heigth 指定してサイズの異なるセルを作れると書かれている。

また、blog : ggplot2: Sales Dashboard に突っ込んだ説明がある。

R 標準の関数を使うと、次のような感じになる。

Tagged with: , , , , , ,
Posted in R

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: