我可以使用ggplot2轻松制作堆积直方图,并在y轴上进行计数 . 我想要的是根据密度转换这个图 . 我可以通过将aes(y = .. density ..)添加到geom_histogram图层来完成此操作;但ggplot所做的是绘制每个单独数据系列的密度,每个数据系列的总面积为1 . 因此,如果您在一个直方图中堆叠4个数据系列,则条形图的总面积将为4 .
我所追求的是根据密度绘制堆积直方图,但在计算密度时考虑所有数据系列 . 换句话说......我希望密度堆积直方图具有与计数直方图相同的比例条 .
2 回答
我找到了一种方法,包括计算binwidth
= bw
,并将y
变量设置为(..count..)/(n*bw)
,其中n
是数据点的数量 .生成一些玩具数据
计算n和binwidth
生成图
现在每个箱子根据每个类别中包含点的比例着色,并且符合黑色线条给出的密度定义 .