2012-04-14 103 views
2

在Matlab中,我有以下形式的数据:绘制时间序列在Matlab与“标签分组”

  • “Z”,一个17'256x1双,含有回归的残差,例如-0.0596
  • “日期”,一个17'256x1单元,包含回归(因此,残差)中每个观察的日期和时间戳。 '10 /二千○十一分之三下午9时30分00秒”

我想这样做: 情节残差邮戳的标签。这些观察结果并非来自连续的几天(即可能存在一些差距,几天之间没有观察到),并且有些天有更多的观察结果。每次观察我都不能有一个标签,因为那样会有太多标签。所以我需要以某种方式将它们分组,无论是按天或按月。也就是说,仅显示当天所有观察结果的月份和日期(例如10/3),或者仅显示该月份所有观察结果的月份(例如3)。我如何使用我拥有的数据来做到这一点?

回答

3

你应该可以在没有“分组”的情况下进行绘图。如果您转换您的日期时间戳:

timestamps = cellfun(@(date)datenum(date), dates); 

那么你可以做一个正常的情节:

plot(timestamps, z); 

和Matlab将处理x轴标签本身(即它会均匀地传播他们在时间范围的日期),但他们将是时间戳编号。要在x轴上获得格式化日期,请使用:

datetick('x'); 
+0

工作就像一个魅力!谢谢老板。 – lodhb 2012-04-20 17:20:03