web-dev-qa-db-ja.com

ggplot2でバー間にスペースを追加する

親愛なるすべて、ggplot2のバーの間にスペースを追加したいと思います。このページは1つのソリューションを提供します: http://www.streamreader.org/stats/questions/6204/how-to-increase-the-space-between-the-bars-in-a-bar-plot- in-ggplot2 。ただし、x軸のグループ化に因子レベルを使用する代わりに、このソリューションは数値シーケンスx.seqを作成して手動でバーを配置し、width()引数を使用してスケーリングします。ただし、以下の例のようにx軸に因子レベルのグループ化を使用すると、width()は機能しません。

library(ggplot2)

Treatment <- rep(c('T','C'),each=2)
Gender <- rep(c('M','F'),2)
Response <- sample(1:100,4)
df <- data.frame(Treatment, Gender, Response)

hist <- ggplot(df, aes(x=Gender, y=Response, fill=Treatment, stat="identity"))
hist + geom_bar(position = "dodge") + scale_y_continuous(limits = c(0, 
    100), name = "") 

リンクされた例と同じ効果を得る方法を知っている人はいますが、因子レベルのグループ化を使用していますか?

乾杯、

アーロン

30
Aaron

これは、あなたの望むことですか?

hist + geom_bar(width=0.4, position = position_dodge(width=0.5))
  • width in geom_barは、バーの幅を決定します。
  • width in position_dodgeは、各バーの位置を決定します。

しばらく遊んだ後、おそらく彼らの行動を簡単に理解できるでしょう。

enter image description here

77
kohske