使用stat_summary(fun.y =“ mean”)添加连续比例的ggplot条

时间:2018-06-27 13:33:05

标签: r ggplot2

我想创建一个条形图,按因子总结我的数据平均值。然后,我想使条形图的填充颜色反映均值。我无法填补工作。我认为stat_summary()就是这样。

使用diamonds数据集:

p <- ggplot(data = diamonds,
                 aes(x = cut, y = price, fill = price)) + 
        stat_summary(fun.y = "mean", geom= "bar" )
p

1 个答案:

答案 0 :(得分:1)

这是一种方法:

p <- ggplot(data = diamonds,
            aes(x = cut, y = price)) + 
         stat_summary(fun.y = "mean", geom= "bar", aes(fill = ..y..)) 

enter image description here

当您对某些数据调用统计摘要时,转换后的数据与原始数据的名称不同,可以通过制作ggplot对象并对其调用ggplot_build来进行检查。

head(ggplot_build(p)$data[[1]])
     fill x group ymin        y     ymax PANEL xmin xmax colour size linetype alpha
1 #4894D0 1     1    0 4358.758 4358.758     1 0.55 1.45     NA  0.5        1    NA
2 #2D5F89 2     2    0 3928.864 3928.864     1 1.55 2.45     NA  0.5        1    NA
3 #306592 3     3    0 3981.760 3981.760     1 2.55 3.45     NA  0.5        1    NA
4 #56B1F7 4     4    0 4584.258 4584.258     1 3.55 4.45     NA  0.5        1    NA
5 #132B43 5     5    0 3457.542 3457.542     1 4.55 5.45     NA  0.5        1    NA

您可以通过使用语法..variable..(例如..y..)来使用此数据中定义的某些变量作为映射。