1

次のコードを使用してグラフを生成すると、エラー バーが奇妙な位置に表示されます。棒グラフの各バーの上部にエラー バーを表示する方法を教えてください。私はこれが基本的なことだと知っていますが、私は何時間もそれを見つめてきました. ありがとう。

library(ggplot2)
df <- data.frame(gender=c("male","male","female","female"),
             trait=c("height","weight","height","weight"),
             value=c(70,150,65,120),
             sd = c(5,15,4,10))

gg <- ggplot(df,aes(x=trait,y=value,fill=trait))
gg <- gg+ geom_bar(stat="identity",position=position_dodge())
gg <- gg + facet_wrap(~ gender, ncol=1)

limits <- aes(ymax=df$value+df$sd, ymin=df$value-df$sd)                                                                                               
gg <- gg + geom_errorbar(limits)
#gg <- gg + geom_pointrange(limits)                                                                                                                                                                       
gg
4

1 に答える 1

3

位置の設定で使用するため、エラーバーの位置がおかしくなりますdf$value(位置が同じになります)。位置をaes()そのままvalue-sd(なしで)設定する必要があり、呼び出し内でdf$設定yminおよび呼び出しできます。ymaxggplot()

ggplot(df,aes(x=trait,y=value,fill=trait,ymin=value-sd,ymax=value+sd))+
       geom_bar(stat="identity",position=position_dodge())+
       facet_wrap(~ gender, ncol=1)+
       geom_errorbar()

ここに画像の説明を入力

于 2013-04-21T18:53:57.983 に答える