You need to enable JavaScript to run this app. 如何在MATLAB中设置秒级时间差为x轴并绘制测量值曲线图
优惠活动
大模型
产品
解决方案
定价
更多

如何在MATLAB中设置秒级时间差为x轴并绘制测量值曲线图

Matlab绘图x轴显示相对时间解决方案

你遇到的问题是因为直接用Excel导入的原始日期序列绘图,且调用了datetick将x轴格式化为日期格式,需要先对时间列做差值转换,具体修改如下:

核心原理

Excel导入的时间格式数据在Matlab中默认存储为序列日期数:数值1代表完整的1天,要转换为秒级时间差,只需要将时间差乘以每日总秒数86400(24×3600)即可。

修改后完整代码

% 读取数据
V1 = xlsread('measured.xlsx','D4:D5295');
V2 = xlsread('measured.xlsx','E4:E5295');
CV = xlsread('measured.xlsx','F4:F5295');
t = xlsread('measured.xlsx','B4:B5295');

% 【新增】计算相对首个时间点的秒级差值
% 如果导入的t是字符串格式,先加一行t = datenum(t); 转成序列日期
t_rel = (t - t(1)) * 86400;

% 绘图时用转换后的相对时间作为x轴
plot(t_rel, V1, t_rel, V2, t_rel, CV)
% 【删除原来的datetick调用,现在x轴已是数值型秒数,不需要日期格式化】

title('Measurement')
ylabel('Data [V]')
xlabel('time [s]')

效果验证

以你给出的示例时间10:20:33、10:20:35、10:20:39为例,转换后的t_rel值正好为0、2、6,符合相对时间差的需求。


内容的提问来源于stack exchange,提问作者jacky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 17:36:01