表データに変換される入力データに対する描画スタイルに依存する処理 (平滑 化、誤差線の延長、2 軸範囲のチェック等) を避けるため、あるいは表データ に変換できる列の数を増やすには、通常の描画スタイルの代わりに "table" キーワードを使ってください。この場合、範囲内/範囲外/未定義を意味する i, o, u が置かれる最後の追加列は、出力にはつきません。その出力先 は、最初に set table <where> で指定する必要があります。 例:
set table $DATABLOCK1 plot <file> using 1:2:3:4:($5+$6):(func($7)):8:9:10 with table
この場合、実際の描画スタイルがない状態なので、各列には特定の軸は対応し ないことになり、よって xrange, yrange 等の設定は無視されます。
文字列に対して using で評価した場合は、文字列も表データ化されます。 数値データは常に %g の書式で書き出されますが、他の書式を使いたい場合は、 そのように書式化された文字列を生成するように sprintf か gprintf を使用 してください。
plot <file> using ("File 1"):1:2:3 with table plot <file> using (sprintf("%4.2f",$1)) : (sprintf("%4.2f",$3)) with table
set table "tab.csv" separator comma plot <foo> using 1:2:3:4 with table
[試験段階の機能] 表データ化のためにデータ点の部分集合のみを選択するには 入力フィルタ条件 (if <expression>) をコマンドの最後に指定することがで きます。その入力フィルタは、出力はされないデータ列も参照できることに注 意してください。この機能は、gnuplot のリリース版が現れる前に大幅に変更 される可能性があります。
plot <file> using 1:2:($4+$5) with table if (strcol(3) eq "Red") plot <file> using 1:2:($4+$5) with table if (10. < $1 && $1 < 100.) plot <file> using 1:2:($4+$5) with table if (filter($6,$7) != 0)