43.68 Timefmt

このコマンドは、データが日時の形式になっている場合に、その時系列データ に適用されます。これはコマンド set xdata time も与えられていないと意 味がありません。

書式:

     set timefmt "<format string>"
     show timefmt

文字列引数 (< format string> ) は gnuplot に日時データをデータファイル からどのように読むかを指示します。有効な書式は以下の通りです:

時系列データ書式指定子
書式 説明
%d 何日, 1-31
%m 何月, 1-12
%y 何年, 0-99
%Y 何年, 4 桁
%j 1 年の何日目, 1-365
%H 何時, 0-24
%M 何分, 0-60
%s Unix epoch (1970-01-01, 00:00 UTC) からの秒数
%S 何秒, 0-60
%b 月名 (英語) の 3 文字省略形
%B 月名 (英語)
任意の文字を文字列中で使用できますが、規則に従っている必要があります。 \ t (タブ) は認識されます。バックスラッシュ + 8 進数列 ( \ nnn) はそれが 示す文字に変換されます。日時要素の中に分離文字がない場合、%d, %m, %y, %H, %M, %S はそれぞれ 2 桁の数字を読み込み、%Y は 4 桁、%j は 3 桁の数 字を読み込みます。%b は 3 文字を、%B は必要な分だけの文字を要求します。

空白 (スペース) の扱いはやや違います。書式文字列中の 1 つの空白は、フ ァイル中の 0 個、あるいは 1 つ以上の空白文字列を表します。すなわち、 "%H %M""1220""12 20""12 20" と同じように読みます。

データ中の非空白文字の集まりそれぞれは、using n:n 指定の一つ一つの列 とカウントされます。よって 11:11 25/12/76 21.0 は 3 列のデータと認 識されます。混乱を避けるために、日時データが含まれる場合 gnuplot は、 あなたの using 指定が完璧なものであると仮定します。

gnuplot は数字でない文字列を読めないので、日付データが曜日、月の名前 を含んでいる場合、書式文字列でそれを排除しなければいけません。しかし、 "%a", "%A", "%b", "%B" でそれらを表示することはできます: これら、及び 日時データの出力の他のオプションの詳細に関しては、以下参照:set format (p. [*])。(gnuplot は数値から月や曜日を正しく求めます。)

他の情報については、以下も参照: set xdata (p. [*]), Time/date (p. [*])

例:

     set timefmt "%d/%m/%Y\t%H:%M"

は、gnuplot に日付と時間がタブで分離していることを教えます (ただし、 あなたのデータをよーく見てください。タブだったものがどこかで複数のスペ ースに変換されていませんか ? 書式文字列はファイル中に実際にある物と一 致していなければなりません)。 以下も参照

http://www.gnuplot.info/demo/timedat.html時系列データ (time data) デモ。

竹野茂治@新潟工科大学
2009年4月5日