2010-11-19 20 views
1

Gnuplotでデータを読み取るときに複数のパイプを使用する方法はありますか? 以下は、SQLステートメントから直接受け取ったデータをプロットします。私が好きな何Gnuplot入力用の複数のパイプ

plot "< sqlite3 tomato-rstats.db \"SELECT data FROM table;\""

は、gnuplotのに到達する前にそのデータを処理することです。 私は、SQLデータをスクリプトを通してパイプし、中間ファイルに出力し、そのファイルをプロットできることを知っていますが、私はむしろ一時ファイルをスキップしたいと思います。私は次の行に沿って何かを想像しましたが、それは明らかに正しい構文ではありません。

plot "< sqlite3 tomato-rstats.db \"SELECT data FROM table;\" | process.pl"

または

plot "< process.pl < sqlite3 tomato-rstats.db \"SELECT data FROM table;\""

が、これは他のいくつかの構文を使用可能ですか?あなたはgnuplotの中にうまく作品を示唆したよう

plot "< sqlite3 tomato-rstats.db \"SELECT data FROM table;\" | process.pl" 

を使用して

+0

このサイトはあなたの質問に答えてくれますか:http://t16web.lanl.gov/Kawano/gnuplot/datafile3-e.html – Tom

答えて

2

。あなたは、例えば、

plot "< cat file.txt | cut -f 5 | head -n 100" w l 

プロットfile.txtの5行目の最初の100アイテム、gnuplotのための入力としてパイプコマンドの任意の組み合わせを使用することができます。これをプロットの入力として使用することはgnuplot自体から行うことはできませんが、UNIXコマンドラインとそのパイプを使用して入力を前処理する可能性を示しているので注意してください。

言うまでもなく、これはWindowsなどのUNIX以外のシステムでは機能しません。

+0

信じられないほど、私はこれを試したときに文法を骨抜きにしているに違いありません。これを指摘してもう一度試してもらってくれてありがとう。 – fracai

関連する問題