2013-06-12 91 views
4

這裏是我當前的腳本,輸出:GGPLOT2:繪製欄使用stat_summary()時

ggplot(data.and.factors.prov,aes(x=assumptions,y=FP, 
         colour=factor(Design.Complexity))) + 
     stat_summary(fun.data=mean_cl_normal,position=position_dodge(width=0.5)) + 
     geom_blank() + scale_colour_manual(values=1:7,name='Design Complexity') + 
     coord_flip() 

enter image description here

怎樣纔可以有(水平)條(開始於FP = 0和結束在點位置)而不是點?(我不想失去錯誤吧)

我想給你我的data.and.factors.prov data.table,但它太大了,無法發佈!如果你需要一個可重複的例子,請讓我知道我可以給你我的數據集?!

回答

7

對於stat_summary()默認的幾何是"pointrange"。要獲得條形圖和錯誤條,解決方法之一是使用兩個stat_summary()調用 - 一個調用錯誤條,第二個調用平均值和條形圖。您還需要將position_dodge(fill=中的width=調整爲與colour=相同的因子,以更改條的填充。

以下是mtcars數據示例。

ggplot(mtcars,aes(x=factor(cyl),y=mpg,colour=factor(gear),fill=factor(gear))) + 
    stat_summary(fun.data=mean_cl_normal,position=position_dodge(0.95),geom="errorbar") + 
    stat_summary(fun.y=mean,position=position_dodge(width=0.95),geom="bar")+ 
    coord_flip() 

enter image description here

+0

什麼呢'位置= position_dodge(0.95)'做什麼? – user4786271

+0

position = position_dodge(x)對每個點應用x的閃避。這有點移動點並分離它們。 –