我有一个包含多个因子的数据框,例如:
df <- data.frame(foo = factor(c("joe", "jack", "jane", "jim")),
bar = factor(c("A", "B", "A", "B")),
baz = c(8, 3, 9, 9))
现在我想获得一个条形图,但不是按照“foo”因子的字母顺序排列,而是按“bar”因子排序。
ggplot(df, aes(x = foo, y = baz, fill = bar)) +
geom_bar(stat="identity")
将仅按字母顺序排列“foo”因子。另外,我可以通过ggplot甚至不使用的因子订购吗?例如,如果我在df数据帧中有第三个因子?
奖金问题:订购因素是否有很好的教程?每次我必须这样做(对于ggplot)我必须谷歌并且总是感到困惑。
答案 0 :(得分:1)
ggplot(df, aes(x = factor(foo, levels=foo[order(bar)]), y = baz)) +
geom_bar(stat="identity")