とにかくデータは描けるようになったが, いつも真四角な箱型の座標軸ではつまらない. と, 人間だんだん欲が出てくることをUSPACKはちゃんと見通している. というより, USPACKは座標軸の細かな設定に関しては, かなりの部分でUXPACK/UYPACKに「よきに計らえ」と任せているので, 細かなことはこれらをコントロールするUZPACKにお願いすれば, いろいろと面倒を見てくれる. 裏を返せば, 細かいことまで思い通りにしたければUSPACKを呼ぶ前に, UZPACKにちゃんと根回しをしておかなければならない.
まず, 座標軸を描く位置は USPACK が管理しているので,
USCGET/
USCSET
の内部変数'CXSIDE'
(X軸)と
'CYSIDE'
(Y軸)を指定する.
'CXSIDE'
, 'CYSIDE'
は長さ2の文字型変数で,
'CXSIDE'
は'T'
(Top), 'B'
(Bottom),
'U'
(User)のうち2文字まで,
'CYSIDE'
は'R'
(Right), 'L'
(Left),
'U'
(User)のうち2文字まで指定でき,
初期値はそれぞれ'BT'
, 'LR'
である.
これらの文字は1文字づつ座標軸ルーチン
(UXAXDV/UYAXDV
)に渡される.
後はこれらのルーチンの仕事である.
uspk07.fの様に'CXSIDE'
に'U'
を指定した場合には,
UXPACKに「ユーザー定義の位置」を通知しておかなければUXPACKが困ってしまう.
そこでUZRSET
で内部変数'UYUSER'
を0.にして,
X軸をY=0の位置に描くように指定する.
この時, USGRPH
は Y軸のスケーリングに関して,
X軸を描く位置 (Y=0) を含めてスケーリングするので,
仮にデータが0を含まなくても
座標軸がとんでもないところに描かれることはない.
その他, uspk07.fの中では
UZISET
で 'IROTLYL'
と'ICENTL'
を変更して,
Y軸のラベルを軸に平行にし,
'INNER'
を-1にして目盛を外向きにしている.
なお, 座標軸のタイトルとサブラベルに関してはUSPACKが管理しており,
'CXSIDE'
, 'CYSIDE'
に指定された最初の文字の
位置にこれらを描くことになっている.
(サブラベルの向きはUZISET
の
'IROTL
zs'
に従う)
また, サブラベルの文字を囲む括弧が気に入らない場合には,
USCSET
で内部変数'CBLKT'
を指定することによって
変更することができる.
この変数に空白を指定すると括弧は描かない.
これらUS
pSET/
USCSET
及び
UZ
pSET
で設定された
座標軸のスタイルに関するパラメタは, 再設定されるまで有効である.
タイトルとスケーリングに関するパラメタは GRFRM
または
GRFIG
によって初期化される.
詳しい内部変数名およびリセットされるタイミングは,
「GRPH2」マニュアルの
USPACK の章を参照のこと.