2

スクリプトから gnuplot をフィードするために bash を使用しています。どのように 1 つのウィンドウだけをポップアップしますか? あなたが走るとしましょう

#!/bin/bash 
for((i=1;i<6;i++)) do
  echo "plot sin(x)"
done | gnuplot -persist

同じプロットの 5 つのウィンドウが表示されます。1つだけ取得するオプションはありますか?


上記に誤りがありました。それはまさに私がやっている種類のランタイムではありませんでした。次のスクリプトを 5 回実行するようなものです。

#!/bin/bash 
echo "plot sin(x)"    

私がやりたいことは、新しいプロセスを作成する前に最新の gnuplot プロセスを強制終了することであることに気付きました。

そのために残念。今日はとても疲れました:D

4

4 に答える 4

3

gnuplot x11 端末はgnuplot_x11、結果を表示するために呼び出される別のプログラムを使用します。ヘルプから

The `xlib` terminal driver supports the X11 Windows System.  It generates
 gnuplot_x11 commands, but sends them to the output file specified by
 `set output '<filename>'`. `set term x11` is equivalent to
 `set output "|gnuplot_x11 -noevents"; set term xlib.`
 `xlib` takes the same set of options as `x11`.

したがって、 の後に残っているプロットを削除したい場合はgnuplot -persist、 で十分ですkillall gnuplot_x11

于 2012-04-18T12:45:44.740 に答える
2

次はどうですか:

  echo `for((i=1;i<6;i++))
  do
    echo 'plot sin(x)'
  done` | gnuplot -persist
于 2012-04-17T18:08:26.477 に答える
2

新しいバージョンの Gnuplot で利用可能な反復機能に興味があるかもしれません (ユーザーズ ガイドの反復セクションを参照してください) 。

于 2012-04-17T22:04:54.393 に答える
1

1 つのスクリプトでできること

    echo "set grid" > gpfile
    tail -f  gpfile | gnuplot  '-'

次に、別のプロセスで、任意の gnuplot コマンドを gpfile に書き込むことができます

    echo "plot \"whatever\" " >> gpfile
    sleep 3
    echo "replot" >> gpfile

...等

いくつかのステータスファイルがあるリアルタイムのプロセス制御表示に役立ちます

不定期更新中です。

于 2013-03-12T04:31:44.900 に答える