我想注释一个图以显示每列的总数。例如
ggplot(diamonds, aes(clarity, fill=cut)) +
geom_bar(position="fill") +
scale_y_continuous(name="proportion")
这将产生一个堆叠的条形图。然而,很难知道每个条的 n 是多少。I1、SI2 等。如何对其进行注释,以便对于每个条形,n 都显示在顶部?
最简单的方法是在绘图之前计算总数,然后将它们分别添加到绘图中。首先,我们计算列总数:
totals = tapply(diamonds$price, diamonds$clarity, length)
dd = data.frame(clarity = names(totals), labels = as.vector(totals), y= 1)
然后我们使用geom_text
添加总数:
ggplot(diamonds, aes(clarity)) +
geom_bar(aes( fill=cut), position="fill") +
scale_y_continuous(name="proportion") +
geom_text(data=dd, aes(x=clarity, y=y, label=labels), size=4)