我正在尝试将日期放在我的x轴上。我的数据被绘制并正确缩放,但x轴仅显示1970年8月小范围内的日期(格式正确)。以下是我用来设置轴的语句:
set format x "%Y%m%d"
set xrange [ '19400101' : '20200101' ] noreverse nowriteback
set xtics time
set xtics format "%m/%d/%Y"
set xtics border out scale 3.5,1.5 nomirror rotate by 45 offset character -5.5, -2.75
set xtics '19400101', 3.1536e+004, '20200101' norangelimit font "arial,10"
set xlabel "ASDF" # <===== just a test--works fine
set xlabel offset character 0, 0, 0 font "" textcolor lt -1 norotate
如果我输入show xrange
,我会[ 1.94001e+007 : 2.02001e+007 ]
。我不应该
从1970年1月1日起几秒钟?
我错过了什么?
Al Chakrin
答案 0 :(得分:0)
有几件事:
set xdata time
的时间数据set timefmt "%Y%m%d"
(命令set format x
等仅控制日期/时间数据的显示方式而不是如何解析它。3.1536e+004
(秒)。这很可能会导致warning: Too many axis ticks requested
。如果此数字应表示一年,则应将其设置为3.1536e+007 = 365*24*60*60
,因为日期/时间数据内部确实以Unix时间戳表示(您可以通过键入print GPVAL_X_MAX
来加载脚本时检查此数据 - 这给出的值1577836800.0
对应于指定的日期1. 1. 2020)