libgd によるグラフ描画の例題です(最小二乗法による直線近似)。
文字列画像の作成 にて用意したフォントを用い、sin関数により生成したデータのグラフを作成しています。
graphInit 関数にてグラフ作成時のオプションを指定していますが、グラフの横幅(graw)、縦幅(grah)、余白(padding)、グラフ描画オプション(DrawType BASE_UNDER:最小値を基準としてグラフを作成する BASE_ORIGIN:原点を基準としてグラフを作成する)等を指定できます。
genData の type にて最大値や最小値が異なるデータを生成していますが、グラフは枠内に収まるよう自動的にスケーリングして描画され、縦横軸のラベルもそれに応じて描画されます。
データのグラフ化のついでに、最小二乗法による直線近似も行っています。グラフ化に用いるデータから傾き、切片を計算し、近似する直線を描いています。
実行結果
genData(type=0)にて原点を基準にして作成したグラフ
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿