ggplot2:在使用stat_summary()时绘制条形图

7

这是我的当前脚本和输出:

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()

输入图像描述

如何在数据可视化中使用水平柱状图代替散点图?(同时保留误差棒)

非常抱歉,我的data.and.factors.prov数据表太大了,无法贴出!如果需要一个可重复的示例,请告诉我如何提供我的数据集?!

1个回答

12

stat_summary() 默认的图形是 "pointrange"。要得到条形图和误差线的解决方案是使用两个 stat_summary() 调用 - 一个用于制作误差线,另一个用于计算均值并绘制条形图。您还需要调整 position_dodge() 中的 width=fill=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()

输入图像描述


position=position_dodge(0.95) 是什么意思? - user4786271
1
position=position_dodge(x) 对每个点应用x的闪避。这会使点有所移动并分开。 - The V

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接