如何使用GnuPlot从CSV文件中绘制时间序列图日期和时间存储在带有双引号的单独列中?

如何使用GnuPlot从CSV文件中绘制时间序列图日期和时间存储在带有双引号的单独列中?,csv,gnuplot,Csv,Gnuplot,我想用x数据作为时间值来绘制数据。 csv文件如下所示 "","12/09/29","00:19:43"," 1787"," 12","12" "","12/09/29","00:19:48"," 1787"," 12","12" "","12/09/29","00:19:53"," 1785"," 13","12" "","12/09/29","00:19:58"," 1785"," 12","12" 这里的问题是双引号的用法。我试过这个 set timefm

我想用x数据作为时间值来绘制数据。 csv文件如下所示

"","12/09/29","00:19:43","  1787","    12","12"
"","12/09/29","00:19:48","  1787","    12","12"
"","12/09/29","00:19:53","  1785","    13","12"
"","12/09/29","00:19:58","  1785","    12","12"
这里的问题是双引号的用法。我试过这个

set timefmt '"%y/%m/%d","%H:%M:%S"'
set datafile separator ","
plot 'myFile.csv' using 2:3:4 with lines
但它不识别时间格式

如何从两个分隔的列(带双引号和逗号分隔符)中识别时间值

谢谢你的帮助


thomas

如果引号是问题所在,并且您使用的是启用了管道的posix系统,那么您可以轻松删除它们:

plot '< sed -e s/\"//g test.dat' using 2:4:5
对我有用


所以我真的认为问题在于您使用的规范指向第三列(包含时间信息),而不是第四列。最后,您可以使用2:4使用
绘制相同的绘图,您实际上从未使用第5列来绘制任何内容。

感谢您的快速回答。我在我的原始数据上尝试了你的上一个建议(用双引号),但我得到了一个错误:gnuplot>设置扩展数据时间gnuplot>设置数据文件sep”,“gnuplot>设置时间mt'”%y/%m/%d“,%H:%m:%S”'gnuplot>使用2:4绘制'essai.txt',带有行警告:空x范围[0:0],调整为[-1:1]显示的日期大约是2000/01/01,而不是2012/09/29。我在windows XP(法语版)上使用gnuplot V4.6:本地设置有问题吗?有什么想法吗?很抱歉布局不好,我不习惯这些评论。你说得对。我忘记了脚本中的
设置扩展数据时间
,所以gnuplot只是在解析12,我没有仔细观察到。但问题仍然存在。我发布的案例已经过测试(这次更仔细),它似乎在gnuplot 4.4.2上工作
set datafile sep ','
set xdata time
set timefmt '%y/%m/%d,%H:%M:%S'  #no quotes in timefmt -- Gnuplot removes them when parsing the datafile.
plot 'test.dat' using 2:4:5 with lines