在我使用的旧服务器上的gnuplot 5.0 patchlevel 1中:
set term pngcairo transparent truecolor size 190,40
set output "some.png"
unset bmargin
set bmargin 0
set lmargin 0
set rmargin 0
set tmargin 0
unset border
unset xtics
unset ytics
unset y2tics
unset key
unset title
unset colorbox
set timefmt '%Y-%m'
set xdata time
set style fill transparent solid 0.25 noborder
tt = "`date +%Y-%m-%d\ %H:%M`"
TIMEFMT = "%Y-%m-%d %H:%M"
now_secs = strptime(TIMEFMT,tt)
two_years_past = now_secs - 3600.0*24*365*2
eval(sprintf('set xrange ["%s":]',strftime(TIMEFMT,two_years_past)))
set autoscale yfix
plot "datafile" using 1:2 with filledcurves below x1 lw 1 lc rgb "#a7eeeeee" title ''
...它生成了一个y范围正确自动缩放的图表。
但是在安装了gnuplot 5.0 patchlevel 3的新服务器上,它不再起作用了。似乎他们在代码中搞砸了一些东西。 yrange是从所有x时间数据计算的,而不是仅在选定的xrange上计算。
我不知道在这种情况下如何纠正yrange。它可以使用stats命令计算,但之前必须关闭“xdata time”,但在这种情况下我不知道,如何为stats命令设置正确的xrange。
此致 帕维尔
编辑: 最小数据文件:
2014-01 2
2014-06 6
2015-01 4
2015-06 8
2016-01 6
2016-06 10