正規分布とティ分布の描画
Visual C++/CLRプログラム例
正規分布とティ分布のグラフ(図1)を描くプログラムをVisual C++/CLRで作成した。
図1
プログラムDrawNormal_t.exeを起動すると図2のフォームが表示される。
図2
「GO」ボタンのクリックで図1の画面が表示される。
破線による曲線の描画は、CLI配列array<Point>の要素に曲線の線分に分割したときの端点の値を設定し、破線のパターンをCLI配列array<Single>に設定した後、これらを用いて以下のように曲線を描いている。
array<Point>
^ pnt1 = gcnew array<Point>(1001);
for (int i = -500; i <= 500; i++)
pnt1[i + 500] = Point( xpos(i / 100.0),
ypos(t_kernel(i / 100.0) * coeff_t1 / coeff) );
array<Single>
^ dsh1 = { 8.0, 2.0 }; // 破線パターン
pn->DashPattern = dsh1;
g->DrawLines( pn, pnt1 );
上のコードでは、pnt1に曲線を構成する短い線分の端点が設定され、破線パターンがdsh1に設定されている。破線パターンは、実線の長さ、空白部の長さの繰り返しで設定される。破線パターンはペンpnのDashPatternに設定されている。このペンpnと線分の端点のCLI配列pnt1を用いてGraphicsのDrawLinesによって設定した破線パターンで曲線が描かれている。
図1のティ分布のパターンを見ると、自由度df=20のティ分布は標準正規分布にかなり近い分布であることが判る。
プログラムのソースコードなどを圧縮ファイルとしてまとめた。この圧縮ファイルDrawNormal_t.zipは、ファイル名をマウスの右ボタンでクリックしてダウンロードすることができる。ダウンロードした圧縮ファイルは、名前をマウスの右ボタンでクリックすると表示されるメニュから「解凍」あるいは「展開」などを選んで解凍することができる。解凍したファイルはVisual C++2008で開くことができる。
Visual C++/CLRプログラミングの解説書として<岡本安晴「大学生のための心理学VC++プログラミング入門」勁草書房>を用意した。