Gnuplot倾向于在时间序列图中使x轴混乱。有关间距较窄的标签示例,请参见下图:
有没有办法让gnuplot避免这么窄的间距?最好这应该在gnuplot脚本中完成,以生成图。
我使用以下gnuplot脚本和随机数据文件生成了图表:
set terminal png
set output "plot.png"
set timefmt "%s"
set xdata time
set xlabel "time"
set ylabel "Random Data"
set boxwidth 600
set style fill solid 0.5
set key below
plot "random.dat" using 1:2 w boxes title ".60"
注意:我正在使用Gnuplot 4.6。
修改
答案 0 :(得分:3)
您可以使用set xtics
标记x轴上较少的点。第一个和最后一个参数必须与您的时间格式相同,在您的情况下%s
,或者自UNIX纪元以来的秒数。中间参数是秒数。
例如,要标记每8个小时,而不是上面的每个4个小时,您可以执行以下操作:
hours = 8
start = "1393934400"
end = "1394107200"
set xtics start, hours * 3600, end
您可以使用终端
中的date
命令获取这些起始值和结束值
date -d "2014-03-04 08:00" +%s
您还可以使用gnuplot system
命令
end = system("date -d '2014-03-06 12:00' +%s")
有关详细信息,请参阅help set xtics time_axis
。