プロッター
プロッター (英: plotter) は、コンピュータの出力機器の一種で、ベクターデータ(線を表現したデータ)を基に動作するものこと。
この装置はもともとは、線を表現したデータを紙の上に(物理的な、インクの)線として現実化するにあたり、内部的には一旦、点の集まりのように扱い、「plot プロット」つまり、たとえば学生がグラフを手書きする時にX,Yの値を一組ずつ求めて点をいくつも打ってそれを線的に結びつけてゆく行為(=plot)を何度も繰り返して線を出現させるように、X,Yの値を一組ずつ内部的に指示し線的に結びつけるようにペン先の位置を制御する、という発想でとらえられた装置なので「plotter」と名づけられた。台の上に紙を固定して、X,Yの方向にペンが動くタイプは、その特徴をふまえつつ分かりやすいように「X-Yプロッタ」とも呼ばれるようになった。
近年のプロッターでフラットベッド方式のものついて言えば、一般的には以下のような部品で出来ている。
ベッド、土台となる板状の部品
ヘッドがX軸に沿って移動することを可能にするためのレール状あるいはシャフト状の部品
ヘッドがY軸に沿って移動することを可能にするためのレール状あるいはシャフト状の部品
ステッピングモーター
ベルト
ヘッド部
制御基盤
電源基盤
古くはプリンターは文字の印刷しかできず単にテキストのデータをプリンターに送るだけでページ出力を得られたのに対して、プロッターのほうは線画を描くため、「ペンを紙から持ち上げる」、「ペンを紙に置く」、「ここからあそこまで直線をひく」といった命令でペンの動きを一々制御してやる必要があり、多くの制御言語が開発された。特に有名なASCIIベースのプロッター制御言語として、ヒューレット・パッカード (HP) のHPGL2と Houston Instruments のDMPLがある。例えば "PA 3000,2000; PD" といったコマンドがあった。
FORTRANやBASICを使っているプログラマは、一般にそういった制御言語を直接使うことはなく、Calcompライブラリなどのソフトウェアパッケージを使うか、機種に依存しないグラフィックスパッケージを利用した。例えば、BASIC言語の拡張であるHPのAGLライブラリ、DISSPLAのようなハイエンドパッケージがある。それらは機種ごとに異なる座標の範囲に合わせてスケール変換したり、低レベルなコマンドへの翻訳を行う。例えば、HP 9830 でBASIC言語を使って X*X をプロットする場合、次のようなプログラムになる。