HP-BASIC入門
ホーム » HPBASIC入門 » グラフィックス処理

グラフィックス処理


グラフィックス処理というと、一般的に画像の処理を思いうかべ ますが、そこまで高機能なものでなくても一般的にプログラム内で グラフを書いたり、特性曲線を引いて確認したり、ということは 必要になってくると思います。
特に得られたデータを集計して表示すると、データの傾向や分析に 非常に役立ちます。

ここではグラフにおける描画の基本について説明します。

グラフィックスの基本




描画を扱う基本としては線を引きたい点のXとYをプロットしていく のが一般的な方法です。

10 GINIT
20 PLOTTER IS CRT, "INTERNAL"
30 GRAPHICS ON
40 FOR X=2 TO 100 STEP 2
50 PLOT X,RND+50
60 NEXT X
70 END



GINITはグラフィックスのイニシャル化です。 これが最初に実行される描画文です。
GRAPHICS ONによってプログラムが何を書いているか が見えるようになります。
行50にはこのプログラムのすべてが入っています。 PLOT X,Yで描画指定を行うのですが、例の場合はループの中で Xの指定をおこなっています。例ではY軸はRND(ランダム) 関数によってY方向に連続する点をつなぐ線をひきます。

ただし、これでは情報を十分に示していない問題点があります。 X軸やY軸のスケーリングの精度が十分でないためです。

プロット面に対して独自の定義をするためには次の文を使用 することができます。

SHOW 0,100,16,18


この分はX=0からX=100、Y=16からY=18の長方形の領域プロットを 定義します。 次の例では、SHOWを指定してスクリーンを定義して 表示します。

10 GINIT
20 PLOTTER IS CRT,"INTERNAL"
30 GRAPHICS ON
40 SHOW 0,100,15,19
50 FOR X=2 TO 100 STEP 2
60 PLOT X,RND+17
70 NEXT X
80 END


グラフィックを見やすくするために

基本的なX-Yグラフィックの処理方法については先述しました。
ただ、そのままの値では結果をそのまま出力するだけで、判断する材料にするにはもう少し加工が必要になります。 それはグラフィックススケーリングです。

変化がわかるようにY軸やX軸を調整することが必要になりますが、それをスケーリングによって解決することができます。 プロットの定義をするにはSHOW関数を用います。

SHOW 0,100,16,18


この文はXの最小値が0、Xの最大値が100、Yの最小値が16、Yの最大値が18という領域をプロット面と定義します。

SHOWはXとYの単位が同じ場合にデータを理解することはできるのですが、通常、計測値を表示するには電圧(ボルト)と秒等の異方性スケーリングが必要になります。 これはWINDOWという別のスケーリング文を使います。

WINDOW 0,100,15,19