如何在 matlab 中将时间绘制为字符串与双精度

how to plot a time as string versus double in matlab

我有一个存储时间和传感器值的数据记录器,它看起来像:

-'1:06:58'       5.0
-'1:07:00'       6.0
-'1:07:00'       7.0
-'1:07:00'       8.0
-'1:07:00'       9.0
-'1:07:02'       10.9

我在 matlab 中检索这些信息并将值存储在数字数组中,将日期存储在元胞数组中 我的问题是如何绘制时间与值的关系,这是我试过的代码

plot (r{1},m)

r{1} 是一个元胞数组,其中有 1 列存储日期,m 是传感器的值

`

如果您显示的数据的第一列是一串字符串,第二列是数字,您可以使用虚拟水平数据集绘制图形,并结合使用 set XTickXTickLabel 标志。类似于:

A = {'1:06:58', '1:07:00', '1:07:00', '1:07:00', '1:07:00','1:07:02'};
B = [5 6 7 8 9 10.9];
plot(1:numel(B), B);
set(gca, 'XTick', 1:numel(B))
set(gca, 'XTickLabel', A)

我得到: