昨日の記事「R言語メタプログラミングの基礎」では、タイトルどおりに基礎的事項を説明しましたが、実例がありませんでした。メタプログラミング機能を使ったサンプルを紹介します。 内容: 2変数関数の3Dグラフを描きたい surf()関数の使用例 surf()関数の実装 2変数関数の3Dグラフを描きたい Rの組み込み関数にcurve()があります。curve(x^2 + x, xlim=c(-2, 2)) のように呼び出すだけで、1変数関数 f(x) = x^2 + x のグラフを描いてくれます。 2変数関数のグラフを描くには、persp()関数が使えますが、curve()のようにお手軽ではありません。事前に関数の値を計算したマトリックスを作っておく必要があります。例えば、「ベルトラン/ボレルのパラドックスから見える確率の本音と建前」でpersp()を使ってグラフを描いていますが、次のような準備を