標準入力からgnuplot
忘れそうなのでメモ。
% cat plot.txt plot '-' w l 1 1 2 4 3 9 4 16 e % gnuplot -persist < plot.txt
- -persistでグラフウィンドウ表示
- plot '-'でファイルの代わり。eまたはendで終了。
プログラムから利用するときに便利です。
Rubyでgnuplot
2乗のグラフ。
#!/usr/bin/ruby puts "plot '-' w l" 100.times do |i| printf "%d %d\n", i, i * i end puts "end"
実行する。
% ./plot.rb | gnuplot -persist
Schemeでgnuplot
フィボナッチのグラフが見たい!!
(define (plot d) (display "plot '-' w l\n") (force d) (display "end\n")) (define (fib n) (define (iter a b count) (display (format "~a ~a\n" count b)) (if (= count n) b (iter (+ a b) a (+ count 1)))) (iter 1 0 0)) (plot (delay (fib 20)))
はじめて遅延評価を使ってみた。
通常のプログラム言語では繰り返しはそれ用の構文を使って書く必要があったので プログラムのモジュール化には限界があります。一方、遅延評価リストを使うと データに繰り返し計算されるという性質を持たせることができるので、 プログラムを簡潔に書くことができます。
遅延評価が好きになった。
実行する。
% gosh plot.scm | gnuplot -persist
後は継続・・・。