我正在尝试根据每个var1级别的男性+女性总数重新排序此条形图。但是,我对fct_reorder
做错了,现在只根据total
male
的值进行重新排序。
library(fct_relabel)
ff <- data.frame(var1=c('a','a','b','b'), var2=c('male', 'female', 'male', 'female'), total=c(40, 60, 30, 90))
ggplot(data= ff, aes(x = fct_reorder(var1, total), y=total, fill=var2)) +
geom_bar(stat = 'identity')
答案 0 :(得分:0)
您需要使用sum
中的fct_reorder
功能:默认情况下,它使用total
值的中位数而不是总和:
ggplot(data= ff, aes(x = fct_reorder(var1, total, sum), y=total, fill=var2)) +
geom_bar(stat = 'identity')