首先是简单的解决方案,可能适合也可能不适合您的一般情况:
# Option 1: tic pattern is independent of data in file
# Set one major tic per day with minor tics every 4 hours
seconds_per_day = 60.*60.*24.
set xtics seconds_per_day
set mxtics 6
如果每个数据条目都需要一个tic而不需要额外的内容,那么它会变得更加复杂。首先请注意,此命令将为文件中的每个条目放置tic标记,但它们都没有标签:
plot 'time.dat' using 1:2:xtic("") with lp
现在让我们通过定义一个label函数来扩展它,该函数从n列读取一个字符串并打印一个空标签,除非最后四个字符是0000(即午夜)。午夜时,它将时间值重新格式化为您首选的%b%d:
label(N) = (strcol(N)[9:12] eq "0000") \
? strftime("%b %d",timecolumn(N,"%Y%m%d%H%M")) \
: ""
完整的plot命令如下所示
plot 'time.dat' using 1:2:xtic(label(1)) with lp