Matlab:将从excel导入的日期转换为可读格式?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab:将从excel导入的日期转换为可读格式?相关的知识,希望对你有一定的参考价值。
我从excel文件导入了数据。导入日期日期后,我的日期如下:
0.641238425925926
0.641932870370370
0.642627314814815
0.643321759259259
0.644016203703704
我用过datestr(Time)
。我以我需要的格式获取日期数据,但数据不是表格格式。我需要绘制数据。所以我需要以表格格式提供所有内容。
然而,datevec
工作,它分别给出小时,分钟。不知道如何将它们结合起来。
有工作吗?
答案
如果您希望这些数字是完整日期(并且“完整日期”我的意思是时间点,包括日期和时间),那么您在阅读Excel电子表格时可能会出错。但由于你只是说几小时和几分钟,我认为你走在正确的道路上,你只想考虑时间。
time = [
0.641238425925926
0.641932870370370
0.642627314814815
0.643321759259259
0.644016203703704
];
time_str = cellstr(datestr(data,'HH:mm:ss'));
上面的代码将生成一个5乘1的字符向量数组,这对绘图不利。正如你所说,datevec
将分割你的日期时间值,它也不好。我建议你将你的值保持为当前的数字格式并使用它们来定义你的x-axis
点。绘制绘图后,您始终可以将刻度标签转换为更易读的格式:
time = [
0.641238425925926
0.641932870370370
0.642627314814815
0.643321759259259
0.644016203703704
];
value = [
1
3
4
0
2
];
plot(time,value);
datetick('x','HH:mm:ss');
如您所见,由于四舍五入,这会失去秒精度。因此,要保持尽可能高的精度:
% ...
plot(time,value);
set(gca,'XTickLabel',cellstr(datestr(data,'HH:mm:ss')));
以上是关于Matlab:将从excel导入的日期转换为可读格式?的主要内容,如果未能解决你的问题,请参考以下文章