根据特定的特定文本或日期排序

时间:2014-05-26 08:21:33

标签: r boxplot

当我使用summary(mydata)时,有一列说DEGREE包含以下文本:

p1
p2
p3
p4
p5
p30

然而,当我在R中绘制相关图表中的boxplot时,x轴上DEGREE的默认排列是P1,P2,P3,P30,P4,P5。如何将p30处的箱线图移动到x轴上显示的最后一个箱图?

不是母语为英语的人,抱歉我的语言不好。

1 个答案:

答案 0 :(得分:3)

一些玩具数据:

set.seed(1)
DEGREE <- sample(c("p1","p2","p3","p4","p30"),100,replace=TRUE)

如果我们现在对barplot中的每个条目的频率DEGREE进行barplot(table(DEGREE)) ,x轴将按字母顺序排序,如您所描述的(并且不想要):

DEGREE

barplot unsorted

解决方案:将您的factor变为levels,并在DEGREE.ff <- factor(DEGREE,levels=c("p1","p2","p3","p4","p30")) barplot(table(DEGREE.ff)) 参数中指定您喜欢的顺序:

DEGREE.ff

barplot sorted

这也适用于依赖于{{1}}等

的箱图