ls.dat
という名前の次のdatファイルがあります。
# Gnuplot script file for "ls"
# Version Removed Added Modified
8.1 0 0 0
8.4 0 0 4
8.5 2 5 9
8.6 2 7 51
8.7 2 7 51
8.8 2 7 51
8.9 2 7 51
8.10 2 7 51
8.11 2 8 112
8.12 2 8 112
8.13 2 17 175
8.17 6 33 213
私はこれでプロットしようとしています:
plot "ls.dat" using 1:2 title 'Removed' with lines,\
"ls.dat" using 1:3 title 'Added' with lines,\
"ls.dat" using 1:4 title 'Modified' with lines
これにより、次のグラフが生成されます。
私が期待しているのは、3つのラインプロットで、すべて上昇するはずですが、レートは異なります。誰もがここで何が起こっているのか見ることができますか?私はそれが非常にばかげたものでなければならないと確信しています。
問題はバージョン番号だと思います。 8.1-> 8.01などを作成してみてください。これにより、ポイントが正しい順序で配置されます。
または、using X
の代わりにusing 1:X
をプロットすることもできます(Xは目的の列番号です)。これにより、これらの値がy軸に、整数がx軸にプロットされます。試してください:
plot "ls.dat" using 2 title 'Removed' with lines, \
"ls.dat" using 3 title 'Added' with lines, \
"ls.dat" using 4 title 'Modified' with lines
アンディラスは完全に正しいです。ちょっとした追加、これを試してください(たとえば)
plot 'ls.dat' using 4:xtic(1)
これにより、データファイルの正しい順序が維持されますが、x軸上のバージョンticラベルも保持されます。
上記の回答に加えて、以下のコマンドも機能します。私がより理にかなっているので、私はそれを投稿します。いずれの場合も「using x-value-column:y-value-column」
plot 'ls.dat' using 1:2, 'ls.dat' using 1:3, 'ls.dat' using 1:4
上記のコマンドでは、_1がx、2がy1、3がy2、4がy3のタブ区切りデータ列を持つls.dat
という名前のファイルがあると想定しています。
ls.datにセパレータが何であれ、gnuplotに指定できます:
set datafile separator "\t"