如何偏移框以匹配步骤?

时间:2018-02-14 13:14:56

标签: gnuplot

我的应用程序部署到CentOS 6和CentOS 7.我刚刚发现Gnuplot 4.4(由于后勤原因,我可以在CentOS 6上使用的最新版本)不支持fillsteps,所以我可爱的图表没有呈现在那里。

所述图形具有一系列steps用于边界线,以及一系列fillsteps用于创建纯色。 (我也是假装堆积的情节,但没关系。)

我估计我可以使用stepsboxes,但boxes在轴上偏移半个tic。我能以高效和富有表现力的方式将它们拖垮吗?或许我应该以完全不同的方式来到这里?

原始代码

set terminal pngcairo enhanced font ",10" size 576, 231
set border back
set grid
set xzeroaxis lt -1
set style line 1 lc rgbcolor "#4E9EF3"
set style line 2 lc rgbcolor "#B23F3F"
set timefmt "%s"
set xdata time
set xlabel "Time (+00:00)"
set format x "%H:%M"
set offset graph 0, graph 0, graph 0.05, graph 0.05
set xrange [571795200:571881600]
set yrange [0:]
plot 'data.csv' using 1:($2+$3) with fillsteps ls 1 fs solid 0.3 noborder notitle,
    '' using 1:($2+$3) with steps ls 1 notitle,
    '' using 1:2 with fillsteps ls 2 fs solid 0.3 noborder notitle,
    '' using 1:2 with steps ls 2 notitle

尝试用方框替换fillsteps

set terminal pngcairo enhanced font ",10" size 576, 231
set border back
set grid
set xzeroaxis lt -1
set style line 1 lc rgbcolor "#4E9EF3"
set style line 2 lc rgbcolor "#B23F3F"
set boxwidth 1.0 relative
set timefmt "%s"
set xdata time
set xlabel "Time (+00:00)"
set format x "%H:%M"
set offset graph 0, graph 0, graph 0.05, graph 0.05
set xrange [571795200:571881600]
set yrange [0:]
plot 'data.csv' using 1:($2+$3) with boxes ls 1 fs solid 0.3 noborder notitle,
    '' using 1:($2+$3) with steps ls 1 notitle,
    '' using 1:2 with boxes ls 2 fs solid 0.3 noborder notitle,
    '' using 1:2 with steps ls 2 notitle

Sample of graph as it plots now

1 个答案:

答案 0 :(得分:1)

我的输入数据恰好是均匀间隔的,X轴增量为调用代码所知。

所以,而不是:

plot 'data.csv' using 1:2 with fillsteps ls 2 fs solid 0.3 noborder notitle

我能做到:

# (for example)
barwidth = 900

set boxwidth 1.0 relative

plot 'data.csv' using ($1+barwidth/2.0):2 with boxes ls 2 fs solid 0.3 noborder notitle

......这似乎可以提供一致的结果。