删除烛台图表gnuplot中的周末间隙

删除烛台图表gnuplot中的周末间隙,gnuplot,candlestick-chart,Gnuplot,Candlestick Chart,我正试图用gnuplot绘制一些金融烛台图表。问题是周末没有数据,我不想显示这些差距。图片和代码包括在下面 set datafile separator "," set xdata time set timefmt"%Y-%m-%d" set xrange ["2015-10-22":"2016-02-06"] set yrange [*:*] set format x plot 'head.dat' using 1:2:4:3:5 notitle with candlesticks 由于每个

我正试图用gnuplot绘制一些金融烛台图表。问题是周末没有数据,我不想显示这些差距。图片和代码包括在下面

set datafile separator ","
set xdata time
set timefmt"%Y-%m-%d"
set xrange ["2015-10-22":"2016-02-06"]
set yrange [*:*]
set format x
plot 'head.dat' using 1:2:4:3:5 notitle with candlesticks

由于每个工作日有一个条目,您可以使用行号,而不是使用日期作为横坐标:

plot 'head.dat' using 0:2:4:3:5 notitle with candlesticks
然后我想你会问如何恢复
x
-轴上的日期。您可以使用
xticslabel

set xtics rotate 90
plot "head.dat" u 0:2:4:3:5:xticlabels(1) notitle with candlesticks
如果要避免显示每个标签,请使用此
everyNth
功能,例如每五个标签:

set datafile separator ","
everyNth(countColumn, labelColumnNum, N) = \
  ( (int(column(countColumn)) % N == 0) ? stringcolumn(labelColumnNum) : "" ) 
set xtics rotate 90
plot "head.dat" using 0:2:4:3:5:xticlabels(everyNth(0, 1, 5)) notitle with candlesticks
结果:


请提供引发问题的示例数据。当然,很抱歉。上传到这里:@ThorNice+1。第二个解决方案为每个数据点生成一个标签,这可以通过使用来减少。这是一个干净的解决方案。将它和每个第n个函数结合起来,结果非常完美。谢谢@Joce和@Thor!谢谢@Thor,这是一个很大的进步!