如何告诉ggplot2用于订购的因素?

时间:2013-07-10 14:03:43

标签: r ggplot2

我有一个包含多个因子的数据框,例如:

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)我必须谷歌并且总是感到困惑。

1 个答案:

答案 0 :(得分:1)

ggplot(df, aes(x = factor(foo, levels=foo[order(bar)]), y = baz)) + 
  geom_bar(stat="identity")