Posted on 2015/02/01, 3:57 PM By admin22
Lisp(Scheme)プログラム環境でのグラフプロットに、前々回でも使用したDrRacketを使ってみました。
環境 : DrRacket6.1.1 / Windows 7
(require plot) (require plot/typed) (require 2htdp/batch-io) (define xs '(1 2 3 4 5 6 7 8 9 10)) (define ys (map (lambda (x) (* x x)) xs)) (plot (points (map vector xs ys))) (define xy (read-csv-file/rows "/temp/data.csv" (lambda (x) (cons (string->number (car x)) (cons (string->number (car (cdr x))) '()))))) (plot (points xy))
x,yの値を別々のリストで保持しているときの実行結果が以下です。
CUIとGUIを混同したような、画面になります。(Mathematicaライク)ドラッグで拡大できたりします。
次はCSVファイルからデータを読みこんだ場合です。
0,2
1,4
2,6
3,8
4,6
5,4
6,2
7,4
8,6
9,8
10,10
文字列として読み込むので、数値に変換しています。
Lispでデータ処理をするときに、途中結果を手軽に見るのに便利そうです。
なによりもRacketはドキュメントが充実しているので、とても使いやすいです。
ドキュメントからも描画関係の機能がとても豊富なのがわかります。
かなり遊べそうです。
Categories: 未分類 タグ: Lisp(Scheme)