删除烛台图表中gnuplot的周末空白

时间:2016-03-16 08:32:08

标签: 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

enter image description here

1 个答案:

答案 0 :(得分:5)

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

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函数posted by dir,例如每五个标签:

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

结果:

Candlestick graph with no weekend gaps