【发布时间】:2022-01-21 13:02:06
【问题描述】:
我正在努力安静地制作一个条形图,向我展示voted 的每个类别中有多少观察值
事情是这样的。我的面板数据框中有一个“投票”变量,数字告诉我,在 2012 年和 2014 年投票给了哪一方。
这是一个可重现的例子
id <- c('1','1','1','2','2','2','3','3','3')
wave <- c(2012, 2013, 2014, 2012, 2013, 2014, 2012, 2013, 2014)
voted <- c(1, NA, 4, 1, NA, 2, 2, NA, 4)
mydata <- data.frame(id, wave, voted)
仅在 2012 年和 2014 年举行了选举,因此也举行了 NA。每个数字代表党的名称。
我想在条形图中显示有多少受访者投票支持第 1、2、4 党...
我尝试了以下方法:
ggplot(mydata, aes(x = as.factor(voted), y = year, fill = year)) +
geom_bar(stat = "identity", position = "dodge")
但正如你所见,它看起来真的很奇怪。
我对这样的事情更感兴趣:
有人有什么建议吗?提前致谢!
【问题讨论】:
-
在条形图中,y 值是我认为在您的请求中“投票”的条形高度,x 值是类别,可能是“id”,子类别可能是“年”。我不认为你想让 y 值成为一个因素。此外,“年份”不是列名,您在 ggplot 调用中缺少括号。 (您应该已经得到该代码并出错。
标签: r ggplot2 bar-chart panel-data