【发布时间】:2013-12-13 20:23:28
【问题描述】:
我正在尝试绘制行程长度分布(距离每增加 10 英里,我想找出该垃圾箱中该特定年份的行程百分比)。当我在 ggplot2 中绘制它时,我的 X 轴刻度标签按字母顺序排列,而不是按距离增加的顺序排列。我尝试过使用建议的各种技巧(Change the order of a discrete x scale),但没有得到任何结果。一个链接我的代码在下面,数据集在这里(http://goo.gl/W1jjfL)。
library(ggplot2)
library(reshape2)
nwpt <- subset(nonwork, select=c(Distance, PersonTrips1995, PersonTrips2001, PersonTrips2009))
nwpt <- melt(nwpt, id.vars="Distance")
ggplot(data=nwpt, aes(x=Distance, y=value, group=variable, colour=variable)) + scale_x_discrete(name="Distance") + geom_line(size=0.5) + ggtitle("Non Work Person Trips") + ylab("Percent")
我检查了距离变量是否是一个因素,如下所示:
is.factor(nwpt$Distance) 1 TRUE
但是,我得到的输出不是我想要的。而不是 10 英里以下是第一类,10-14 英里是下一个等等。我得到的情节如下图所示(此处为 PDF:http://goo.gl/V7yvxT)。
感谢任何帮助。 TIA 克里希南
【问题讨论】:
-
对因子水平重新排序。我认为
gdata包中的reorder.factor()函数会自动满足您的需求。