使用Gnuplot使用分号和时间格式化数据绘制CSV

时间:2013-07-11 12:39:21

标签: csv plot visualization gnuplot

我有2个CSV文件,每个文件超过80k。

第一个文件具有以下结构:

12.11.12 - 00:59:58;428,8;
12.11.12 - 00:59:59;428,9;
...
12.11.12 - 21:53:32;592,7;
12.11.12 - 21:53:35;596,4;
...
14.11.12 - 12:31:41;510,0;
14.11.12 - 12:31:41;510,0;

第二个有另一个结构:

1;428.9;
1;428.9;
5;428.9;
...
117109;673.6;
117110;672.8;
117111;672.8;
...
214241;497.2;
214241;497.2;
214258;507.3;

如何在Gnuplot中绘制这两个CSV文件?

P.S。第一列必须是x,第二列必须是y。

1 个答案:

答案 0 :(得分:2)

首先,显然你可以set the delimiter thus

set datafile separator ";"

然后set the time format为您的第一个文件,并将x设置为时间轴:

set timefmt "%d.%m.%y - %H:%M:%S"
set xdata time

绘制第一个文件

plot "data1.csv" using 1:2

第二个文件x值似乎没有日期格式,但可能已经过了几秒?为此,只需做

set datafile separator ";"
plot "data2.csv" using 1:2

而不是set xdata time。然后你应该有几秒钟的x轴。如果你需要同时绘制两者,最简单的方法是预先处理一个看起来像另一个。