3.14. 勝敗別のヒストグラムを並べて表示
facet_wrap
グラフをグループ化・集計し、並べて表示するfacet_wrapという機能を試してみます。
# ggplot2 パッケージを使用 library(ggplot2) # ヒストグラムを描画 g <- ggplot(d) g <- g + geom_histogram( aes( x=d$"自チーム.10分あたりのTOUCH数", y=..density.., colour= d$"勝敗", fill=d$"勝敗" ), binwidth=5, alpha=0.3 ) # 勝敗でグルーピング g <- g + facet_wrap(~d$"勝敗",ncol=2) # タイトルを変更 g <- g + labs(title="10分あたりのボールタッチ回数") g <- g + xlab("ボールタッチ") g <- g + ylab("確率密度") g <- g + labs(colour="凡例", fill="凡例") # テーマを指定 g <- g + theme_bw() # 色を指定 g <- g + scale_color_manual(values=c(GREEN_5, BLUE_5, PINK_5)) g <- g + scale_fill_manual( values=c(GREEN_5, BLUE_5, PINK_5)) print(g)
図 3-14-1
何故か集計・区分けがめちゃくちゃです。
facet_grid
facet_wrapがうまくいかないので、facet_gridという機能を試してみます。
...省略... g <- g + facet_grid(.~d$"勝敗") ...省略... print(g)
図 3-14-2
同じく集計・区分けがめちゃくちゃです。
...省略... g <- g + facet_grid(d$"勝敗"~.) ...省略... print(g)
図 3-14-3
同様です。
grid.arrange
gridExtraパッケージのgrid.arrangeという機能を使ってグラフを並べてみます。
# 勝敗別のデータフレームを作る d_w <- subset(d, 勝敗=="勝") d_l <- subset(d, 勝敗=="負") d_d <- subset(d, 勝敗=="引き分け") # ggplot2 パッケージを使用 library(ggplot2) # 勝った試合のヒストグラムを描画 g <- ggplot(d_w) g <- g + geom_histogram( aes( x=d_w$"自チーム.10分あたりのTOUCH数", y=..density.., colour=BLUE_5, fill=BLUE_5 ), binwidth=5, alpha=0.3 ) # タイトルを変更 g <- g + labs(title="勝った試合のボールタッチ数") g <- g + xlab("10分あたりのボールタッチ回数") g <- g + ylab("確率密度") # テーマを指定 g <- g + theme_bw() g <- g + theme(legend.position="none") # 色を指定 g <- g + scale_color_manual(values=c(BLUE_5)) g <- g + scale_fill_manual( values=c(BLUE_5)) print(g) g_w <- g # 引き分けた試合のヒストグラムを描画 g <- ggplot(d_d) ...省略... g_d <- g # 負けた試合のヒストグラムを描画 g <- ggplot(d_l) ...省略... g_l <- g library("gridExtra") grid.arrange(g_w, g_d, g_l, ncol=2)