繁体   English   中英

在matlab中用时间序列绘制数据

[英]Plotting data with time series in matlab

我有一些从2007/5/1到2007/5/30从00:00到23:59:58的数据。 我想根据数据和时间一起绘制这些数据。 如何同时定义日期和时间? 因为它有一个固定的日期和时间。 例如

2007/5/1 00:00:00       -0.2
2007/5/1 00:00:02       -0.1
2007/5/1 00:00:04       -0.12
.
.
. 
2007/5/31 23:59:58      -0.4

我已经使用过DateTime代码,但我有规律的时间间隔,我不知道如何解决它。

以下是使用datetime变量的示例。 您需要将数据导入到与时间向量( t下方)对齐的相应向量,以便data(i)t(i)的相关数据。

% create a datetime vector of all instances:
start = datetime('2007/5/1 00:00:00','InputFormat','uuuu/MM/dd HH:mm:ss');
step = duration(seconds(2));
fin = datetime('2007/5/31 23:59:58','InputFormat','uuuu/MM/dd HH:mm:ss');
t = start:step:fin; % a 1339200 elements vector, of all time steps
% some random data:
data = rand(numel(t),1);
% plotting samples 1 to 100:
plot(t(1:100),data(1:100))
xlim([datenum(t(1)) datenum(t(100))])

我在这里使用随机数作为例子,你将无法看到任何这样的长矢量,所以我只绘制了一部分:

plotDate

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM