R:ggplot更改标签的顺序

R:ggplot更改标签的顺序,r,plot,ggplot2,R,Plot,Ggplot2,我在ggplot方面遇到了一些问题。我想做的是在一些表格下面绘制一个普通的箱线图 在这里,我将表的值定义为.df: lab.df<-data.frame(lab1=c("0-12.9","13.0-19.2","19.3-23.2","23.3-26.3","26.4-29.8","29.9-33","33.1-36.5","36.6-40.8","40.9-46.2","46.3-100"), lab2=c("7.80","16.62","21.29","24.71","28.12","

我在ggplot方面遇到了一些问题。我想做的是在一些表格下面绘制一个普通的箱线图

在这里,我将表的值定义为.df:

lab.df<-data.frame(lab1=c("0-12.9","13.0-19.2","19.3-23.2","23.3-26.3","26.4-29.8","29.9-33","33.1-36.5","36.6-40.8","40.9-46.2","46.3-100"),
lab2=c("7.80","16.62","21.29","24.71","28.12","31.40","34.80","38.60","43.22","53.77"),
lab3=c("58.63","46.03","46.68","48.84","51.92","54.11","56.50","59.71","62.41","68.33"))
值从 7.80,16.62,21.29,24.71,28.12,31.40,34.80,38.60,43.22,53.77 到 16.62,21.29,24.71,28.12,31.40,34.80,38.60,43.22,53.77,7.80


无论我如何改变顺序,7.80总是在结尾而不是开始。我在监督什么?非常感谢你的帮助

为什么你希望这些数字是因子而不是数字?解决问题最简单的方法就是转换成数字

如果确实需要有因子,则需要指定所需的顺序。否则,顺序只是字母顺序,7.8在53.77之后

lab.df$lab2 <- factor(lab.df$lab2, levels=lab.df$lab2)

如果我使用因子,表中的数字不是我喜欢的排列方式,数字之间的空间是不规则的。但是你的第二个解决方案非常有效,非常感谢!
plot(df.table2)
lab.df$lab2 <- as.numeric(as.character(lab.df$lab2))
lab.df$lab2 <- factor(lab.df$lab2, levels=lab.df$lab2)