如何在R中重新排序

时间:2015-08-03 07:52:40

标签: r ggplot2

我正在使用此代码:

z <- data.frame(Ins = factor(c("d", "c",    "a",    "e",  "f",  "b")),
            percent = c(2.48,   4.55,   15.16,  16.47,  21.17,  40.17))

ggplot(data=z, aes(x=Ins, y=percent)) + geom_bar(stat="identity")+
  geom_bar(colour="NA", fill="slateblue3", stat="identity") + 
  guides(fill=FALSE) +
  coord_flip() +
  xlab("Year") + ylab ("Procent (%)") +
  ggtitle("People using computers 
       - 2014 -") +
  theme(axis.text.x = element_text(angle = 90, hjust = 1, colour='black'))+
  theme(panel.background = element_rect(fill = 'white', colour = 'white'))

当我运行绘图时,R将值重新排序为:a,b,c,d,e,f而不是我给出的顺序:d,c,a,e,f,b,它对应于递增顺序:从2.48到40.17。 我能做些什么来保持我想要的订单? 10X

1 个答案:

答案 0 :(得分:0)

由于问题是&#34;如何重新排序&#34;,我认为答案是

z$Ins <- reorder( z$Ins, z$percent )

实际上重新排序因子,因此,data.frame(不仅仅是图形表示),并以灵活的方式(而不是明确地重新分配级别)。