MATLAB:绘制时间表矩阵

时间:2017-11-20 12:23:41

标签: matlab plot timetable

我想绘制时间表的所有列。例如,假设我有一个包含两列的时间表。

time = datetime({'2017-11-15'; '2017-11-18'; '2017-11-19'});
col1 = [NaN;4;5];
col2 = [7;6;4];
tt = timetable(time, col1, col2);

如何绘制所有列(折线图)?

让我添加三件事:

  1. 我事先不知道列标题。
  2. 我事先不知道列数。
  3. 第一列可能不一定是最长的列(请参阅NaN)。

3 个答案:

答案 0 :(得分:3)

有一个更复杂的版本。 : - )

plot(tt.time, tt.Variables);

答案 1 :(得分:1)

看看varfun

>> ax = axes('NextPlot','add');
>> varfun(@(v) plot(ax,tt.time, v), tt)

答案 2 :(得分:0)

从R2018b版本开始,stackedplot函数使此操作变得简单得多,这毫无价值:

stackedplot(tt)