2017-11-04 33 views
0

gnuplotをはじめて使用しようとしています。 私はgnuplotについて全く新しいです。基本的な間違いをお許しください。 私は株価チャートをプロットしようとしています。 私のデータは次のようになります。gnuplotの株価チャート(X軸の日付を使用)

Date Open High Low Close 
21/04/2017 31.81 32.09 31.67 31.95 
20/04/2017 31.55 32.02 31.45 31.91 
19/04/2017 31.3 31.71 30.99 31.57 
18/04/2017 31.78 31.84 31.06 31.3 
17/04/2017 31.3 31.97 31.21 31.8 
13/04/2017 31.26 31.48 31.16 31.19 
12/04/2017 31.13 31.38 30.98 31.24 
11/04/2017 31.37 31.66 30.86 31.2 

私はラインをプロットするために、以下の設定を使用しています。私は別のウェブサイトから入手しました。

set xdata time 
set timefmt "%d/%m/%Y" 
set xrange ["21/04/2015":"21/04/2017"] 
set format x "%d/%m/%Y" 
plot [0:100] 'chart.dat' using 0:2:3:4:5 notitle with financebars 

ただし、x軸は1970年1月1日です。添付の写真を参照してください。 chart.png

ご協力いただければ幸いです。ありがとう。

答えて

1

プロットコマンドplot [0:100] ... using 0:2:3:4:5は、xには列0をとり、列0は時間列ではなく行番号に対応します。

このコマンドが動作するはずです:

plot 'chart.dat' using 1:2:3:4:5 notitle with financebars 
+0

は私が前にすることを試みました。これは私が得るものです。 "gnuplot> plot [0:100] 'chart.dat' financebarsで1:2:3:4:5 notitleを使用 ^ すべてのポイントyの値は未定義です! – JiggidyJoe

+0

'[0:100]'はxの範囲を(再び)指定し、あなたのケースでは1970年から0〜100秒に設定します。この範囲にデータはありません。あなたは明示的な 'set xrange'を持っているので、plotコマンドで' [0:100] 'をスキップすることができます。 – maij

+0

こんにちはMaij。このplot chart.datを0:2:3:4:5 notitle with financebarsとすると、得られるのはx軸で01/01/1970です。私がそれを単純化して "plot.dat 'を線で1:4のnotitleを使ってプロットすると、x軸に正しい日付が得られます。だから、日付の列を参照するには、列1を指定する必要があります。financebarsとcandlesticksへの参照はすべて0:2:3:4:5という構文を使用しています。これは、金融の柱や燭台と一緒に日付の列として列1を使用する方法に私の頭を傷つけるままになります。私は1:0:2:3:4:5を試しましたが、どちらもうまくいきませんでした。乾杯。 – JiggidyJoe