我创建了一个图表,显示肢体运动的时间(2.56秒)。我的图表如图1所示。
获取图表的代码是:
x=data(1000:1256,2)
Fs=100
Ts=1/Fs
L=length(x)
t = (0:L-1)*Ts;
figure
plot(t,x);
现在我试图将时间单位更改为实时数据(日期和时间,记录测量结果时),我希望得到如图2所示的内容:标记x轴的日期和时间。理想情况下,我希望有6个时间标记。
使用:
datestr(data(1000),'dd-mm-yyyy HH:MM:SS AM')
我知道第一次(我的数据的第1000行)是10-07-2010 11:31:50 PM,最后一行(1256)是10-07-2010 11:43:42 PM。每1秒始终记录50条记录,但问题是,测量结果不是经常记录的 - 我的意思是,有时几分钟没有测量(没有移动时)。
我一直在尝试使用XTick等,但我不知道如何为我的x轴选择实时数据以及如何用实时测量来标记x轴。
labels=datestr(data);
set(gca,'XTick',1:6; 'XTickLabel',labels);
有人可以帮助我吗?
答案 0 :(得分:0)
这应该格式化标记
datetick('x', 'dd-mm-yyyy HH:MM:SS AM')
设置勾号后可能会出现
set(gca,'XTick',[ ... ])
数组中的哪个位置应放置时间的datenum
值。
考虑这个最小的例子:
x = linspace(now-2, now, 30);
y = rand(30, 1);
plot(x, y)
datetick('x', 'dd-mmm HH:MM')