在R中的同一图表中可视化条形图和条形图的平均值

时间:2013-10-23 06:18:16

标签: r ggplot2 visualization bar-chart graph-visualization

我在R enter image description here

中创建了以下条形图

我有高风险,中风险和低风险的平均条形图。 enter image description here

我现在想要在第二个图形上叠加第一个图形,意味着在第二个图形内部,我希望第一个图形中显示的高风险条形图放在第二个图形的高风险条下。同样,对于Med风险和低风险。 这可以在R?

中完成

1 个答案:

答案 0 :(得分:1)

正如Tyler指出的那样,你想要的并不是一个好主意,但回答你的问题,这里有一些代码可以帮助你开始:

##Generate some data
heights = runif(15)
heights = heights/sum(heights)
dd = data.frame(heights, type=1:3)
m_heights = tapply(dd$heights, dd$type, mean)

诀窍是在添加第二个条形图时生成空条:

##rep(0, 5) is used to pad
h = c(rep(0,5), heights[1:5], rep(0,5), heights[6:10], rep(0,5), heights[11:15])
barplot(m_heights, width=1, space=1,  ylim=c(0, max(dd$heights)), xlim=c(0, 6))
barplot(h, width=0.2,space=0,add=T,  col="white", border=NULL)

然而,更好的情节只是数据的简单散点图

plot(dd$type, dd$heights)

我们甚至可以添加手段:

points(1:3, m_heights, col=2, pch="X")