Gnuplot:CSV和X轴上的日期

Gnuplot:CSV和X轴上的日期,gnuplot,Gnuplot,我想绘制存储在CSV文件中的加密货币数据 这是CSV文件目前正在查看的内容: Date,Total,XMR,ETH,BTC,BCH 2018-01-20 14:28:09,-48.31496473496111,-2.618473974057121,9.759254879456023,-32.73371338624,-22.72203225412001 2018-01-20 14:32:42,-48.70059864440001,-2.6060653245296663,9.414353657705

我想绘制存储在CSV文件中的加密货币数据

这是CSV文件目前正在查看的内容:

Date,Total,XMR,ETH,BTC,BCH
2018-01-20 14:28:09,-48.31496473496111,-2.618473974057121,9.759254879456023,-32.73371338624,-22.72203225412001
2018-01-20 14:32:42,-48.70059864440001,-2.6060653245296663,9.414353657705647,-32.67846583748799,-22.830421140088
2018-01-20 14:35:22,-48.63036074628374,-2.5440902562853935,9.414353657705647,-32.67846583748799,-22.822158310216004
2018-01-20 14:39:31,-48.541251796683724,-2.5440902562853935,9.414353657705647,-32.58935688788797,-22.822158310216004
这是到目前为止我的gnuplot脚本:

set key inside bottom right
set title 'Revenues'
set datafile separator ','
set ylabel 'EUR'
set grid
plot for [col=2:5] "data.txt" using 0:col with lines lw 2 title columnheader
结果是这样的:

但正如您在第一列中看到的,每个数据集都有一个日期,我也想使用这个日期。它应以较短的形式显示为x轴标签(例如18/20/01),并且轴也应正确缩放

我的做法是:

set xtics rotate
set timefmt '%Y-%m-%d %H-%M-%S'
set format x "%d-%m"
set xdata time
plot for [col=2:5] "data.txt" using 0:col:xtic(1) with lines lw 2 title columnheader
…这导致

如您所见,x轴的标签是正确的列,但它既不是我想要的格式,也不是缩放的(请注意,我将最后一个日期更改为2019年)


您能告诉我如何做到这一点吗?

Gnuplot从
1
开始计算列数:

set datafile separator ","
set timefmt '%Y-%m-%d %H-%M-%S'
set format x "%d-%m"
set xdata time
plot for [col=2:5] "data.txt" using 1:col

使用1:col w l为[col=2:5]“data.txt”绘图,非常简单,但非常有用。现在可以了!非常感谢!:)请添加您的评论作为答案,以便我可以将其标记为已解决。。。