根据另一列中的数据绘制一列中的值的总和

时间:2013-07-22 14:52:23

标签: r ggplot2

我对R和来自电子表格背景的ggplot都很陌生,我正在寻找在数据透视图中很容易做到的事情。我想根据另一列中给出的类别绘制给定列的值的总和。

让我们举个例子:

element qty category
apples  2   Red
apples  1   Green
apples  4   Red
apples  3   Green
apples  6   Yellow

我想要一个图表,根据他们的类别绘制所有苹果,而不是通过列类别中的计数,而是通过qty列中相应值的总和。

含义6个红苹果4个绿色苹果和6个黄色苹果......有没有一些简短的方法可以直接在ggplot中完成此操作,或者我需要事先处理我的数据 - fi。与plyr?

很抱歉,如果这个问题是一个noob问题,但我找不到任何答案......

1 个答案:

答案 0 :(得分:7)

让罗马的评论更明确:

# Create the data frame
element <- rep("apples", 5)
qty <- c(2, 1, 4, 3, 6)
category <- c("Red", "Green", "Red", "Green", "Yellow")
d <- data.frame(element=element, qty=qty, category=category)

使用stat="identity"计算ggplot

内的总和
ggplot(d, aes(x=category, y=qty)) + geom_bar(stat="identity")

enter image description here

编辑:缺少“)”添加了ggplot函数的结尾