matlab 日期加小时数_将EXCEL 中的日期 时间 导入到MATLAB坐标轴中

将EXCEL 中的日期 时间 导入到MATLAB坐标轴中

将Excel 中的日期 时间 导入到MatLab坐标轴中。(图示为原理图)

matlab 日期加小时数_将EXCEL 中的日期 时间 导入到MATLAB坐标轴中_第1张图片

第一种方法:(如原理图中所示)

result = xlsread(‘filename.xlsx’, ‘sheet2’, ‘a5:d7’);

这样用,只能读取Excel表中的数字,比如 2012/12/21 这样的格式是读取不到的(其实是没有变量来保存返回的结果)。

matlab 日期加小时数_将EXCEL 中的日期 时间 导入到MATLAB坐标轴中_第2张图片

第一步:用Excel提供的数字格式功能,将日期调整为数字,如图中将日期转换为数字所示。

第二步:将数值表示日期加上datenum(‘1990-01-01’)【有的是1904标准哦】,然后plot就可以了。

第三步:用datetick设置x或y或z坐标为指定的显示格式。如:datetick(‘x’, ‘yyyy-mm-dd’);将x轴设置为按照年-月-日的格式显示。

第二种方法:

将Excel中的所有数据读入到matlab中:

[num, text, raw] = xlsread(‘filename,xlsx’, ‘sheet2’, ‘a3:d9’);

raw中保存了所有日期的源格式(如:2012/12/21 12:21:35),raw中第一列是日期。

[m,n] = size(raw);%多少行日期

plot(raw(:,1), rand(m,1));%绘图(造个假数据)

datetick(‘x’, ‘yyyy-mm-dd’);%设置坐标轴为yyyy-mm-dd 格式

下面列出了matlab一些常用的日期操作的函数。

MatLab           中日期和时间的操作(不包含其他工具箱中额外提供的方法)

addtodate     通过字段来修改日期,比如:datestr(addtodate(now, -39, ‘day’)) 当前时间加上负39天,然后显示字符串

calendar        财务工具箱提供的日历功能,自行:help calendar

clock              将当前的日期和时间用一维矩阵(年、月、日,时、分、秒,分别用一个双精度数字表示的一维数组)表示。

cputime         计算matlab启动后cpu运行了多少时间,常用法:t1 = cputime; %其他代码 t2 = cputime;  t2 – t1 就可以计算其他代码执行所占用的时间。

date               返回用字符串表示的当前时间

datenum       将日期和时间序列化为数字表示的形式。

datestr           将数字表示的日期时间转换为字符串(可以控制格式哦,比如:datestr(now, ‘yyyy-mm-dd HH:MM:SS ddd’); 输出结果为:ans = 2012-10-17 22:18:24 Wed 。唉,星期几没法直接用中文表示)。

datevec         和clock差不多,就是可以转换指定的日期时间为一维矩阵。

eomday         计算上个月的最后一天,比如计算2012年,1-12月最后一天是多少号:eomday(2012, 1:12)  结果为:ans =   31    29    31    30    31    30    31    31    30    31    30    31

etime             计算两个一维矩阵(必须是6个元素,和clock返回的格式一模一样)表示的时间差。【matlab说:如果要计算某个功能花费多长时间的时候,不要用 clock 和 etime,因为他们使用的是系统时间,用tic 和 toc 功能来代替。】

now                当前日期和时间(用个double数字来表示)

weekday      计算某一天是星期几(他们是从星期天开始算的哦,偶被坑了)。

最后一张图,Excel中将数字格式表示的日期格式化为字符串:

matlab 日期加小时数_将EXCEL 中的日期 时间 导入到MATLAB坐标轴中_第3张图片

喜欢 (5)or分享 (0)

你可能感兴趣的:(matlab,日期加小时数)