避免在执行ggplot条形图时重新排序

时间:2018-03-16 11:07:01

标签: r ggplot2

我想在x轴上做一个分类变量的简单条形图,在y轴上做一个数值变量,数据包含在数据框中。当我使用ggplot时会发生什么,它是按字母顺序重新排序分类变量的时候,我希望顺序与数据帧中的顺序相同。如果我将分类变量分类为因子并将级别固定为数据帧中的顺序,那么它可以工作,但这看起来应该是不必要的。有更简单的方法。这是我正在做的一个例子。

library(ggplot2)

df<-data.frame(letter=c("ball","truck","apple","bear"), no= c(1,2,3,4))

df$letter <- factor(df$letter, levels = df$letter[order(df$no)])

ggplot(df, aes(letter, no))+ geom_bar(stat="identity")

1 个答案:

答案 0 :(得分:1)

使用重新排序有一种更简单的方法:

ggplot(df, aes(x = reorder(letter,no), no))+ geom_bar(stat="identity")