Gnuplot:时间序列图中的x轴窄标签间距

时间:2014-03-06 09:23:34

标签: gnuplot time-series

Gnuplot倾向于在时间序列图中使x轴混乱。有关间距较窄的标签示例,请参见下图:

Overlaps in x-axis

有没有办法让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。

修改

  1. 写下更少的时间就足够了。
  2. 可以在http://pastebin.com/w0kia7Dt
  3. 找到生成图表的示例文件

1 个答案:

答案 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