按日期划分的R图表

时间:2010-10-21 16:36:19

标签: r dataframe

我从SQL查询获得了事务数据,我将其转换为数据框。 df的第一列包含UNIX时间戳(格式=“%Y /%d /%m%H:%M”),我想用它来创建一个图形图,使用par来显示每个日期1个唯一的线图。目前我正在摸索第1列并与前一行进行比较以查找更改,然后在我的plot命令中指定要使用的虚拟指示器。 谢谢, 将

2 个答案:

答案 0 :(得分:1)

如果没有任何示例数据,有点难以回答,但我会拍摄。

我猜你的日期如下:"2009-03-04 17:45"

它可能被视为角色。您可以通过运行str(data.frame)

来验证数据框每列的类

使用包stringr,您只需读取y / d / m并将其转换为Date类,如下所示:

library(stringr)
date="2009-03-04 17:45"
date=as.Date(str_replace_all(str_sub(date,3,10),"-","/"), "%y/%d/%m")

然后,您可以在date中将ggplot2用作一个组,以便为​​每个日期绘制一行。您还可以在ggplot调用中使用+ facet_wrap(~date)创建单独的面板(每个日期一个)。

答案 1 :(得分:1)

  1. 首先从时间戳中获取日期部分

    SELECT *,DATE(timestampcolumn)作为来自yourtable的日期;

  2. 将日期列转换为因子

    mydf< - transform(mydf,as.factor(thedate))

  3. 用例如xyplot

    库(晶格) xyplot(VARx前提〜变化| thedate,数据= myDF上)