gyapp (GTK Yet Another Ploting Program) は、sin(x-t) のような時間 t をパラメータに含んだ関数のグラフや、 t を媒介変数とした 2D 曲線をリアルタイムにプロットできます。3次元表示も可能です。
作者:
Ignacio Martin さん
ホームページ:
http://www.ele.uva.es/~imartin/programs/gyapp/
バージョン: 1.0.1 (2001/04/30)
ライセンス: GPL
付属ドキュメント README を読む
インストールしたら、適当なターミナル・エミュレータから
$ gyapp
で起動します。最初の起動時には
** WARNING **: Can't open /home/xxxxxxx/.gyapp This is a normal message if it's the first time you run gyapp
というようなメッセージが出ますが、終了時に設定保存ファイルが ホームディレクトリに作られて、2度目からはそれが起動時に読み込まれます。
「Options」ボタンをクリックすると次のような設定画面が出てきます。
この条件で「Start」ボタンをクリックすると反時計回りに回るボールが出てきます。 「Time between animations」を小さくするとぐるぐる回ります (10 ms 以下にすると GUI の反応が悪くなってしまいます)。
「Functions」のところをそれぞれ次のように設定して「Ok」してみましょう。
100*sin(t/40) 100*sin(t/30)
リサジュー図形が描かれます。 「Trace body」をチェックして「Ok」すれば軌跡が残ります。
Function type は次の6種類があります。
1. 1D Parametric y=y(t) 2. 2D Parametric x=x(t), y=y(t) 3. Standard y=y(x,t) 4. Polar Parametric r=r(t), theta=theta(t) 5. Polar Standard r=r(theta,t) 6. 3D Surface z=z(x,y,t)
「3. Standard
」を選択して
50*sin((x-t)/4)+50*sin((x-t)/4.5)
と関数を設定すると次のような波が左から右へ進行していく様子が描かれます。
「6. 3D Surface
」 で
50*sin(sqrt(x^2+y^2)/40-t/20)
とすれば次のような波打つ曲面が描かれます。
スケーリングの機能がないので、自分で関数中の係数を調整しないといけないのが やや難ですが、時間の要素があることでいろいろ楽しめるアプリケーションです。
関数の記述では、定数として pi、e、 演算子は四則演算のほか "%" (剰余)、"^" (冪乗)、関係演算子 ">"、"<"、 関数は sin、cos、tan、sinh、cosh、tanh、asin、acos、atan、abs、ln、log、sqrt が使えます。
「5. Polar Standard」での theta
は関数の記述では x
で代用します。
100*sin(4*x)
というのは正葉線として有名ですね。
「4」のところをいろいろ変えてみてください。
ただし1回転分しか描かないので 1/2
の図を描くには「4. Polar Parametric」の方でやってみてください。
LinuxMLD 5,6,7 用の RPM
gyapp-1.0.1-1_mlb1.i386.rpm (53,571 bytes)
をインストールします。
rpm コマンドでインストールするにはスーパーユーザになって
# rpm -i gyapp-1.0.1-1_mlb1.i386.rpm
とします。
MLD 5,6 では
Gnome の GUI でインストールすることもできます。
リアルタイムのプロットという意味では
がおもしろいです。標準入力から x, y のデータを受取り、 メカニカルなプロッターが描くようにプロットします。
数学関数のプロットを目的とした類似アプリケーションは geg のページを参照してください。
その他、データのプロットを含むグラフ作成アプリケーションについては gnuplot のページを参照してください。