我有以下数据集:
Year Generated Rejected
1 2012 133118208 7256986
2 2013 289487598 49652610
3 2014 192232775 31765480
4 2015 40434968 2513930
我正在尝试生成一个分组的条形图,它在x轴上有Year
,在y轴上有一个数字刻度,表示每年拒绝生成的Vs。
我很困惑我应该将y轴设置为什么?我还没有尝试使用spread()
函数,因为我希望可能有更简单的方法
答案 0 :(得分:2)
首先,您必须以适当的格式排列数据以进行绘图:
library(reshape2)
df1 <- melt(df, id = "Year")
或者你可以使用tidyr
包:
library(tidyr)
df1 <- gather(df, variable, value, -Year)
如果您不熟悉melt()
基本上,它说:&#34;收集df
中除Year
之外的所有变量,调用新的键列variable
和新的值列{{1 }}&#34;
value
如果您希望使用逗号分隔数千来格式化数字:
library(ggplot2)
ggplot(df1, aes(Year, value)) +
geom_bar(aes(fill = variable), position = "dodge", stat = "identity")