読者です 読者をやめる 読者になる 読者になる

箱ひげ図に横棒を追加する

以下のようにすると簡単に横棒付きの箱ヒゲ図を作成できます。

require("ggplot2")

df <- data.frame(
  x = rep(1:5, each = 50),
  y = rt(2500, 3)
)

ggplot(df, aes(x = factor(x), y = y)) +
  stat_boxplot(geom = "errorbar", stat_params = list(width = 0.5), geom_params = list()) +
  geom_boxplot() +
  theme_gray(25, "serif")

ggsave("myplot.png", height = 7, width = 7)

この方法には一つ難点があって、stat_boxplot(geom = "errorbar", width = 0.25) のように書いても横棒の長さを変更できませんでした。
理由がちょっと分からないので、情報をもらえると助かります。
kohske さんより頂いた情報で解決できました。
stat_params = list()geom_params = list() は知っておくとお得かもしれません。
stat_qq()dparams = list() みたいに投げたいところにパラメータを与えられるイメージですね。

stat_params = list(width = 0.75): default

stat_params = list(width = 0.50)

stat_params = list(width = 0.25)


自分でスクリプトを書いてしまえば、もっと細かく設定できますね。
参考:How to add horizontal lines to ggplot2 boxplot?

追記 (2015/12/11)

1.0.1の次のバージョンでは

ggplot(df, aes(x = factor(x), y = y)) +
  stat_boxplot(geom = "errorbar", width = 0.5) +
  geom_boxplot() +
  theme_gray(25, "serif")

と書けるようになるみたい。