0

gnuplotで不規則な時系列をバーとしてプロットしたいのですが、時間情報が無視されたかのように、バーは常に日の境界(真夜中のマーク)に配置されます(たとえば、最初の2つのエントリが真夜中に重なり合って表示されます)。日は十分に広く間隔が空けられています、それはバーがあまりにもぎゅうぎゅう詰めになっているという問題ではありません。サンプルデータ:

07/09/2012-00:00 1 741 0.50
07/09/2012-12:00 2 3087 0.50
07/12/2012-00:00 1 2011 0.33
07/12/2012-08:00 2 814 0.33
07/12/2012-16:00 2 99 0.33

以下の関連するgnuplotコード。xticsの設定は美学のためだけのものであり、問​​題とは関係ありません。

set xdata time
set timefmt "%m/%d/%y-%H:%M"
set xtics format "%m/%d"
set xtics "07/08/2012-00:00", 2*172800 ,"08/28/2012-00:00"
plot FILE using 1:3:2 with boxes lc variable

2つの別々の、しかし関連する質問:1)スペースを節約するためにx軸ラベル(つまり、07/08ではなく7/8)から先行ゼロを削除できますか( "%m"と "%d"は常に先行ゼロを与えます) ?2)ファイルのデータに基づいてバーの幅を変更できますか(この場合、4番目の列を標準のバー幅の小数乗数にします)?ありがとう。

4

1 に答える 1

1

時刻の形式が間違っています。%Y(2桁の年)ではなく(4桁の年)が必要です%y

幅を指定するには、4 列のデータが必要です。

plot FILE using x_column:y_column:x_width:linestyle w boxes lc variable

ここで、x_width は秒単位のボックスの幅です (時間軸の単位であるため)。

于 2012-08-27T19:37:24.400 に答える