Rで等高線などを描く
埋もれてもったいないので検索できるところでメモ
3次元グラフ。Excelみたいにマウスでぐるぐる回せないのでいまいち。
> x <- -10:10 > z <- outer(x, x, function(x, y){x *x + y * y}) > persp(x, x, z)
等高線。
> x <- -100:100 > z <- outer(x, x, function(x, y){x * x + y * y + x * y}) > contour(x, x, z, nlevels=50, drawlabels=FALSE)
CRANからインストール。(e1071: Misc Functions of the Department of Statistics (e1071), TU Wien) CRAN - Package e1071
> install.packages("e1071") # 実行するとどのミラーからダウンロードするか聞かれる --- このセッションで使うために、CRANのミラーサイトを選んでください --- URL 'http://cran.md.tsukuba.ac.jp/bin/macosx/leopard/contrib/2.12/e1071_1.5-26.tgz' を試しています Content type 'application/x-gzip' length 762841 bytes (744 Kb) 開かれた URL ================================================== downloaded 744 Kb ダウンロードされたパッケージは、以下にあります /var/folders/jF/jFCv7+jlGWuEz+W8iRqbyE+++TI/-Tmp-//RtmpiqNj9A/downloaded_packages > library(e1071) 要求されたパッケージ class をロード中です 警告メッセージ: パッケージ 'e1071' はバージョン 2.12.2 の R の下で造られました > sigmoid function (x) 1/(1 + exp(-x)) <environment: namespace:e1071>
> x <- 0:50 > z <- outer(x, x, function(x, y){sigmoid(x / 10 + 3) + sigmoid(y / 10 + 4)} ) > contour(x, x, z, nlevels=100, drawlabels=FALSE)
ふむ…x <- 0:5のままでなめらかな等高線を書く方法がわからなかったので10倍にしてしまったが、常識的に考えてオプションか何かで指定できるように設計するよな…どうやって調べるんだろう。