如何从具有7列和20001行的csv文件中绘制数据?

时间:2019-04-25 19:36:30

标签: csv plot octave

我有一些仪器以0.0025(四分之一密耳)的速率采样数据。我通常记录10-20秒的数据,这给了我40K-80K行和7列。我需要以波形形式绘制一些数据,以说明位移。需要这个MATLAB / Octave世界的新方向。

数据示例:

Timestamp,Ref,RM,BP,GF,RM G's,RM in. per sec.
19/04/24 14:48:58.136,0,1392.246,3058.145,4450.391,0,0
19/04/24 14:48:58.136,0,1466.381,2944.569,4410.95,0.133059412,0.513729084
19/04/24 14:48:58.136,0,1325.902,3119.985,4445.887,0.120312347,0.464513942
19/04/24 14:48:58.136,0,1367.778,3059.484,4427.262,0.124112176,0.479184699
19/04/24 14:48:58.137,0,1391.516,2822.838,4214.354,0.126266162,0.487501024
19/04/24 14:48:58.137,0.04564941,1365.465,3105.377,4470.842,0.123902294,0.478374367
19/04/24 14:48:58.137,0.1369482,1416.349,3075.431,4491.78,0.128519508,0.496200969
19/04/24 14:48:58.137,0.1521647,1349.275,2953.091,4302.365,0.122433214,0.472702394
19/04/24 14:48:58.138,0.2738965,1413.671,3133.862,4547.533,0.128276507,0.495262764
19/04/24 14:48:58.138,0.4260611,1423.166,2939.578,4362.744,0.129138083,0.498589224

已在Octave中打开了csv文件,但不知道如何处理它以作图。

想绘制表示位移的波浪,可能需要对每个值应用一个公式才能从力到位移。

1 个答案:

答案 0 :(得分:0)

在这种情况下,您不能使用csvread,因为所有数据都必须为数字,并且您显然已经有日期了。

因此,我建议您根据以下内容进行尝试:

  • 使用fileread以单个字符串的形式获取内容
  • 使用strsplit分割\n(换行符)字符以获取行
  • 再次使用strsplit分割','个字符以获取令牌
  • 使用datenumdatevec获得日期部分的适当数字表示形式(例如datenum(Token{1}, "dd/mm/yy HH:MM:SS.FFF")
  • 在执行此操作时,将涉及到的所有数字保存在合适的数组中
  • 一旦有了这个数组,就可以绘制相关的东西。 (不过请注意this issue