Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 按月份绘制ggplot中的订单日期_R_Date - Fatal编程技术网

R 按月份绘制ggplot中的订单日期

R 按月份绘制ggplot中的订单日期,r,date,R,Date,我的DF$Date格式为“yyyy-mm-dd”,如下所示。有没有一种简单的方法可以在ggplot中按月对这些数据进行分组 Date 2015-07-30 2015-08-01 2015-08-02 2015-08-06 2015-08-11 2015-08-12 我添加了一列DF$Month作为“年-月名称”(例如2015年4月) 我是通过DF$Month来实现这一点的,可能还有其他解决方案,但这里有一个以完整的月份名称为因素的解决方案。正如您已经发现的,您需要一个x变量来分组。然后,我们可

我的
DF$Date
格式为“yyyy-mm-dd”,如下所示。有没有一种简单的方法可以在ggplot中按月对这些数据进行分组

Date
2015-07-30
2015-08-01
2015-08-02
2015-08-06
2015-08-11
2015-08-12
我添加了一列
DF$Month
作为“年-月名称”(例如2015年4月)
我是通过
DF$Month来实现这一点的,可能还有其他解决方案,但这里有一个以完整的月份名称为因素的解决方案。正如您已经发现的,您需要一个x变量来分组。然后,我们可以将其视为“订单因素”问题,而不是日期比例问题

#first, generate some data
dat <- data.frame(date=sample(seq(as.Date("01012015",format="%d%m%Y"),
                           as.Date("01082015", format="%d%m%Y"),by=1),1000,T),
                  value=rnorm(1000))
我们生成一个分组变量。这是一个带有“2015年1月、2015年3月”标签的因素。但是,我们通过创建一个从最小日期到最大日期的序列(按月)并以相同的方式格式化来强制订单

dat$group <- factor(format(dat$date, "%B %Y"), 
                    levels=format(seq(min_month, max_month,by="month"),
                                                             "%B %Y"))

dat$group可能还有其他解决方案,但这里有一个以完整的月份名称为因素的解决方案。正如您已经发现的,您需要一个x变量来分组。然后,我们可以将其视为“订单因素”问题,而不是日期比例问题

#first, generate some data
dat <- data.frame(date=sample(seq(as.Date("01012015",format="%d%m%Y"),
                           as.Date("01082015", format="%d%m%Y"),by=1),1000,T),
                  value=rnorm(1000))
我们生成一个分组变量。这是一个带有“2015年1月、2015年3月”标签的因素。但是,我们通过创建一个从最小日期到最大日期的序列(按月)并以相同的方式格式化来强制订单

dat$group <- factor(format(dat$date, "%B %Y"), 
                    levels=format(seq(min_month, max_month,by="month"),
                                                             "%B %Y"))
dat$group尝试添加

scale\u x\u离散(限值=月.abb)

所以你的代码是

MonthlyActivity尝试添加

scale\u x\u离散(限值=月.abb)

所以你的代码是



monthlyActivity为什么不将整个日期转换为日期对象?(
as.Date(…)
。这将允许ggplot生成日期刻度。如果没有时间,其他任何事情都很难说。我不确定你想要什么。你能详细说明一下吗?我已经修改了我的帖子。让我知道是否有更多的细节要添加。你想绘制什么?你说的“按月分组”是什么意思?我的想法是,我有一堆单独的日期、数据点,但是想创建一个方框图,按月份聚合日期。为什么不将整个日期转换为日期对象呢?(
as.date(…)
。这将允许ggplot生成日期刻度。如果没有时间,其他任何事情都很难说。我不确定你想要什么。你能详细说明一下吗?我已经修改了我的帖子。让我知道是否有更多的细节要添加。你想绘制什么?你说的“按月分组”是什么意思?我的想法是,我有一堆单独的日期、数据点,但是我想创建一个方框图,按月份汇总日期。谢谢,我缺少的是逐段排序的级别!看起来2月份的一些日期已经过了,导致了
NA
。我相信排序是在2月底,我们怎么解释呢?确实,你就快到了。祝你好运e项目:)上面已编辑,但后续问题:看起来2月的某些日期已关闭,导致了
NA
。我相信排序是在2月底,我们如何解释这一点?不确定您的意思,我看不到任何编辑。对不起,我使用
DF$month2在日期序列中添加了感谢,这是一个逐段的序列w正如我所遗漏的!看起来2月的一些日期已经过了,导致了
NA
。我相信测序是在2月底,我们怎么解释呢?事实上,你就快到了。祝你好运:)上面编辑的项目,但接下来的问题是:看起来2月的一些日期已经过了,导致
NA
。我相信测序是在2月底,我们怎么解释呢?不确定你的意思,我看不到任何编辑。Sorry使用
DF$Month2添加到日期序列中
dat$group <- factor(format(dat$date, "%B %Y"), 
                    levels=format(seq(min_month, max_month,by="month"),
                                                             "%B %Y"))