例:
上記のようなグラフをプロットしたいと思います: いくつかのデータ ポイントが欠落している線、つまり線が不連続であることを意味します。
これどうやってするの?
これは、データファイルがどのように見えるかによって異なります。データファイルに空白を挿入すると、隣接するポイントが接続されません (これが最も簡単な方法です)。
検討:
#datafile
1 2
2 3
4 2
5 3
そして、それをプロットするスクリプト:
plot 'datafile' u 1:2 w linespoints
欠落しているデータを処理できるトリックは他にもあります set datafile missing
。これについては、組み込みのヘルプ ( help missing
) を参考にしてください。
単一のプロットの場合set datafile missing
、欠損値を表す文字列を指定するために使用し、using $
指定子を使用して gnuplot が欠損値の行にギャップを残すようにします。さまざまなusing
指定子については、gnuplot のドキュメントでset datafile missing
説明されています。
列番号が変数として指定されている場合、これは少しトリッキーです。たとえば、ファイルの複数の列をプロットするには、変数を使用して列番号を指定できます。
do for [i=2:10] {
plot 'datafile' using ($1):i with lines
}
ただし、$
構文を使用しようとすると、機能しません。
do for [i=2:10] {
plot 'datafile' using ($1):($i) # ERROR!
}
解決策は、列関数を使用することです。これは、欠落している値に対しても空白を残します。
do for [i=2:10] {
plot 'datafile' using ($1):(column(i)) with lines
}