【发布时间】:2018-12-14 16:45:11
【问题描述】:
我正在尝试使用 datetime 数组中的 x 轴值在 matlab 中进行绘图。
一个值的示例:'2016-06-03T13:37:20.315Z'
首先,这些值被保存到一个结构数组中,我尝试将它们复制到一个单独的数组中。我使用以下代码:
timestamp=[];
for j=1:length(data)
timestamp = getfield(data,{j},'timestamp');
timestamp{j}=(datetime);
end
但是当我查看数组时,似乎所有值都是一个日期,甚至不在“数据”结构数组中。
示例:
timestamp{1} = '14-Dec-2018 00:31:05';
timestamp{10} = '14-Dec-2018 00:31:05';
timestamp{19} = '14-Dec-2018 00:31:05';
我的第一个想法是可能是输入格式的问题所以我尝试了
timestamp{j}=(datetime(timestamp,'InputFormat','uuuu-MM-dd''T''HH:mmXXX','TimeZone','UTC'));
但我收到一条消息:“使用日期时间时出错(第 635 行) 无法使用格式 'uuuu-MM-dd'T'HH:mmXXX' 将 '2016-06-03T13:37:20.315Z' 转换为日期时间。"
有什么想法吗?
【问题讨论】:
-
在您的 for 循环中,您正在沿
i迭代,但您正在访问数据中的jth 对象。这可能解释了为什么它们都是相同的日期,但不能解释错误的日期。