R 对x轴时间序列数据重新排序

R 对x轴时间序列数据重新排序,r,plot,R,Plot,我有以下数据: month eD_data eD_model 1 10.6 10.57456047 1 10.6 10.56613913 1 10.6 10.55792205 1 10.6 10.54991164 1 10.6 10.54211029 1 10.6 10.53452031 1 10.6 10.52714394 1 10.6 10.51998337 1 10.6 10.51304073 1

我有以下数据:

month   eD_data eD_model
1   10.6    10.57456047
1   10.6    10.56613913
1   10.6    10.55792205
1   10.6    10.54991164
1   10.6    10.54211029
1   10.6    10.53452031
1   10.6    10.52714394
1   10.6    10.51998337
1   10.6    10.51304073
1   10.6    10.50631807
2   10.4    10.41738606
2   10.4    10.41613442
2   10.4    10.41513148
2   10.4    10.41437754
2   10.4    10.41387281
2   10.4    10.41361745
2   10.4    10.41361153
2   10.4    10.41385505
2   10.4    10.41434794
2   10.4    10.45139153
2   10.4    10.45580457
3   10.2    10.47581204
3   10.2    10.48139532
3   10.2    10.48720795
3   10.2    10.49324822
3   10.2    10.49951433
3   10.2    10.50600444
3   10.2    10.51271661
3   10.2    10.51964885
3   10.2    10.52679912
3   10.2    10.53416529
3   10.2    10.63854333
3   10.2    10.64849527
截至12月,还有其他月份的数据。但这里有捷径。我想要的是绘制一个图,但x轴,即月份,从7月(7日)开始 这是我的密码:

a<-factor(mydat$month, levels=c("7","8","9","10","11","12","1","2","3","4","5","6")
plot(eD_data~a, data=mydat) 
lines(eD_model~a, data=mydat)
Here what I got 

a需要根据x轴值的顺序对数据帧进行排序。否则,当x值较高的数据帧行出现在x值较低的数据帧行之后时,
将不得不回溯

# Fake data
set.seed(4865)
dat = data.frame(month=1:12, values=rnorm(12))
将月订单设置为7月开始,并将“结束”设置为6月:

按原始顺序绘制行:我们已将因子顺序设置为7月开始,因此这就是我们在x轴上得到的结果。但是,数据帧的行从一月开始<代码>行
仅按数据在数据框中显示的顺序逐点放置一行,因此该行从1月开始,必须回溯到6月到7月:

plot(values ~ month, data=dat)
lines(values ~ month, data=dat)

月份对行进行排序
:现在数据框的行以与因子
月份
相同的顺序出现,一切正常:

dat = dat[order(dat$month), ]

plot(values ~ month, data=dat)
lines(values ~ month, data=dat)

需要根据x轴值的顺序对数据帧进行排序。否则,当x值较高的数据帧行出现在x值较低的数据帧行之后时,
将不得不回溯

# Fake data
set.seed(4865)
dat = data.frame(month=1:12, values=rnorm(12))
将月订单设置为7月开始,并将“结束”设置为6月:

按原始顺序绘制行:我们已将因子顺序设置为7月开始,因此这就是我们在x轴上得到的结果。但是,数据帧的行从一月开始<代码>行仅按数据在数据框中显示的顺序逐点放置一行,因此该行从1月开始,必须回溯到6月到7月:

plot(values ~ month, data=dat)
lines(values ~ month, data=dat)

月份对行进行排序
:现在数据框的行以与因子
月份
相同的顺序出现,一切正常:

dat = dat[order(dat$month), ]

plot(values ~ month, data=dat)
lines(values ~ month, data=dat)

月份
转换为因子后,在绘制数据之前,请按
月份
对数据进行排序<代码>mydat$月=系数(mydat$月,级别=c(7:12,1:6));mydat=mydat[订单(mydat$月),];绘图(eD_data~month,data=mydat)@eipi10:按您的方式操作只需将数据返回原点,它将从1月份开始(即1月份)。如图所示,我希望x轴从7开始。在绘图(eD_data~month)中,这可以正常工作,但是线条(eD_model~month)在一个月内似乎保持不变,因此无法正常工作。请参见下面的示例。将
month
转换为因子后,请在绘图前按
month
对数据进行排序<代码>mydat$月=系数(mydat$月,级别=c(7:12,1:6));mydat=mydat[订单(mydat$月),];绘图(eD_data~month,data=mydat)@eipi10:按您的方式操作只需将数据返回原点,它将从1月份开始(即1月份)。如图所示,我希望x轴从7开始。在绘图(eD_data~month)中,这可以正常工作,但是线条(eD_model~month)在一个月内似乎保持不变,因此无法正常工作。请参见下面的示例。我得到了它!非常感谢你的帮助,我明白了!非常感谢你的帮助。