2016-09-30 78 views
0

我想把日期放在我的x軸上。我的數據繪製和正確縮放,但在x軸只顯示日期(正確格式化的)在小範圍內1970年八月這裏是我使用來設置軸的語句:xn軸上的Gnuplot 5.0日期

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 ]。 012,不應該從01/01/1970開始秒?

我錯過了什麼?

鋁Chakrin

回答

0

有幾件事情:

  1. 首先,我們需要做的Gnuplot知道,X-數據確實與set xdata time
  2. 更長時間的數據,應該指定輸入時間數據的格式。在這個特殊情況下,它將是set timefmt "%Y%m%d"(命令set format x等僅控制如何顯示日期/時間數據,而不是應如何解析它)
  3. 在您的圖中,指定的間距指定爲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)