55
Title XYプロッターによる折れ線・棒・円・地図グラフ作図法 ―多角形図形内にセンター・シンボル,標準および特 殊記号を任意の傾き,間隔にハッチングする手法とその 応用― Author(s) 米盛, 徳市 Citation 琉球大学経済研究(21): 201-254 Issue Date 1979-12 URL http://hdl.handle.net/20.500.12000/3135 Rights

XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

Title

XYプロッターによる折れ線・棒・円・地図グラフ作図法 ―多角形図形内にセンター・シンボル,標準および特殊記号を任意の傾き,間隔にハッチングする手法とその応用―

Author(s) 米盛, 徳市

Citation 琉球大学経済研究(21): 201-254

Issue Date 1979-12

URL http://hdl.handle.net/20.500.12000/3135

Rights

Page 2: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

-研究ノートー

XYプロッターによる折れ線・棒・

円・地図グラフ作図法

一多角形図形内にセンター・シンボル,

標準および特殊記号を任意の傾き,間

隔にハッチングする手法とその応用一

米盛徳市

Iまえがき

Ⅱ基本サブルーチン

Ⅱ-1SYPLTルーチン

Ⅱ-2KOTENルーチン

Ⅱ-3IDOOルーチン

Ⅱ-4SIKAKUルーチン

Ⅱ-5CIRCLEルーチン

Ⅲ使用例

Ⅲ-1折れ線グラフ

Ⅲ-2棒グラフ

Ⅲ-3円・ドーナッツグラフ

Ⅲ-4地図グラフ

Ⅳむすび

V参考文献

Ⅵ付録

-201-

Page 3: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

Iまえがき

今曰の情報化社会では,我々は日常取り扱う「数値の羅列」を分り易い図形や

グラフに表現し,それらを視覚を通して理解する必要性が増大してきている。事

実数字や文章などでうまく表現できない箇所が図形やグラフによって補充され,

内容の全体的な把握から部分的な把握へと導く。コンピュータ技術の急速な進歩

に伴って,広範囲な分野で独自の図形処理研究がなされてきており,ユーザー層

の拡大も著しい。その中にあって図形機能を持つXYプロッタの果す役割はその

他の同機能を持つグラフィック・ディスプレイ装置,キャラクター・ディスプレ

イ装置,ライン・プリンター,ドット・プリンターなどと並び非常に大きい。

本稿の目的は,①XYプロッターを用い,多角形(polygonともいい,三つ以

上の線分で囲まれた平面図形)内においてセンター・シンボル,標準および特殊

記号を任意の傾きや間隔にハッチングする手法を説明すると同時に,②その応用

としてハッチングが基本になる折れ線グラフ,多角形が基本になる棒グラフ,円

グラフおよび地図グラフ作図法を展開することにある。③さらにこれらの手法が

Reseachtoolとして役立てられ,④独自のプロッター・サブルーチン・パッケー

ジの一環とし,将来学生のコンピュータ実習に寄与することにある。なお,ハッ

チングは図形・グラフ内に線影を与え,内容の区分や強調点を明らかにする役割

がある。上記の4つのグラフの性格および特徴は次のとおりである。

折れ線グラフは時系列変動,例えば年度毎の人口や物価の変動,年間降雨量の

変動,毎月の生産高や販売高の実績,窓口サービスにおける待ち行列の系の長さ

の変動などの推移を見る時によく利用される。

棒グラフは序列に無関係な量的比較,例えば地域別の人口分布,土質における

サトウキビの単収,各設問に対する解答者数などをみる場合や,折れ線グラフの

ように月毎の売上高の推移の時系列と同時に構成比率をみる場合に利用される。

円グラフは折れ線グラフや棒グラフのように時系列推移をみるにはあまり通

さないが,一時期における構成比率,例えば沖縄県の土地利用状況,生活費の内

訳,コンピュータ業界の市場占有率,銀行預金内訳などをみる場合に利用される。

-202-

Page 4: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

但し構成要素が増えると見づらくなりがちであり,その場合は円グラフの一種で

あるドーナツ・グラフが利用できる。ドーナツ・グラフは数多い構成要素を外円・

内円に多段分類(大分類・小分類すること)するのに用いられる。その例として

輸出総額の内訳,大学の人員構成,人事移動の内訳などがある。

地図グラフは円グラフと同様時系列の表現には適さないが,一時期において分

類,ランク付けが県や国などにできる場合に用いられる。その例として各県の人

口密度図,分布図,移民者数,出生率および死亡率などがある。

然し,いざこれらの図形やグラフの作成となると下記のようないくつかの問題

点がでてくる。例えば,①形やスケーリングはどうすべきか,②構成要素はどう

配置すればよいか,③利用するハッチング手法は何か(例えば実線,破線,点線,

鎖線,その他特殊な文字・数字系列など),④ハッチングに利用される文字,記

号列はどの位の傾きや大きさでうまく図形,グラフ内に連続描写すべきか,⑤文

字・記号列間隔はいくらにすべきか,⑥全体的にバランスがとれ,視覚的に美し

さがあるかなどが挙げられる。事実上記の項目は人の手をわずらわして行う場合,

正確性,スピード性に乏しくなるうえに莫大な時間,エネルギーを費やすことに

なる。以下説明する3つの基本サブルーチン,SYPLT(シンボル・プロット)

ルーチン,KOTEN(交点座標)ルーチン,IDOO(移動)ルーチンは全て

の多角形に共通である。折れ線グラフはSYPLTルーチンを利用して作成し,

棒グラフはこれらのサブルーチンにSIKAKU(四角)ルーチンを追加して作

成し,さらに円グラフはCIRCLE(サークル)ルーチンを追加し作成する。

また地図グラフは基本サブルーチンのみを利用して作成するが,あらかじめ県や

国の境界線となるデータが与えられなければならない。なお本稿における計算お

よび図化は琉球大学法文学部のPANAFACOMU-100とそれに連結した

XYプロッター(6210,)を利用した。また日本地図データ作成は町田宗博君

(当時地理学研究生,現在大阪数育大学大学院生)の協力によるものである。

-203-

Page 5: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

Ⅱ基本サブルーチン

Ⅱ-1SYPI/T(Symbolplotting)ルーチン

l)機能

サブルーチンSYPLTは始点の座標(X1,Y1),終点の座標(X2,Y2),シ

ンボルタイプ(LTYPE)(表1参照)およびシンボルの高さ(H)が与えられる

と次のような処理を行う。

(1)LTYPEが実線を示すならば二点間に実線が描かれる。

(2)LTYPEが実線以外の場合(センター・シンボル,標準および特殊記号のい

ずれかである場合)は最初に始点と終点間の線分が+X方向となしうる角度

(ANGLE)とこれらの二点間の距離(Z)を求める。

(3)送り込まれたシンボルがセンター・シンボルである場合(LTYPE二13)

は次のような処理が行なわれる。

①センター・シンポルの原点は中央に位置し。また次の原点はそH分ANGLE方向に位置するので,距離(Z)内に連続描写されるシンボル個数(N)は

AL=7.0/4.0*HとするとN=Z/ALで求められる。

図1センター・シンボルの原点移動

=。(X2,Y2)H=文字の大きさ(高

W=H

〆、 ̄

グー、-

-%〆で’)

1〆

7l4

ll

(XLY1) +X

-204-

Page 6: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

②もしN=Oであれば終了するが,N≧1ならば,連続描写されるN個のシン

ボルが二点間の中央に位置付けされるように原点の移動が始点(X1,Y1)

より(Z-FLOAT(N-1)*AL)/2.0分だけANGLE方向に行なわれ

る。

③原点移動後シンボルをN個プロットし終了する。

(4)もし送り込まれたシンボルが標準および特殊記号ならば次のような処理が行

なわれる。

①標準および特殊記号の原点は左下に位置しまた次の原点は号H分,ANGLE方向に位置付けられるので(図2参照),始点と終点間の距離(Z)

内に連続描写されるシンボル個数(N)はN=Z/Hで求められる。

②もしN=0ならば,始点と終点間にシンボルを描かずに主プログラムに戻

るが,N≧1ならば,連続描写されるシンボルN個を中心に位置付けるため

原点の移動が始点(X1,Y1)より(Z-FLOAT(N)*H+H/7.0)/2.0

分だけANGLE方向に行なわれる。

図2標準および特殊記号の原点移動

H=文字の大きさ(高さ)

W-÷H(標準記号)

W一二H(特殊記号)L=H

(X2,Y2)エ

ン〆弓 =

、--

N-

$グー

+X(XLY1)

-205-

Page 7: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

③②の終了後原点をさらに÷H分だけサブスクリプト制御(整数コード47)を行う。

④シンボルの連続描写後終了する。

なおプログラムの呼び出し形式,流れ図およびプログラムは次のとおりであ

る。

2)呼び出し形式

CALLSYPLT(X1,Y1,X2,Y2,H,LTYPE)

3)パラメータの説明

(1)X1,Y1,X2,Y2:始点の座標(XLY1),終点の座標(X2,Y2)

(単位:センチ)。

(2)H:シンボルの高さ(単位:センチ)。(実線の場合は直接関係ないが,

任意の実数値が与えられなくてはならない。)

(3)LTYPE:始点と終点間に連続描写されるシンボル・タイプ(整数コー

ドで表わされる。詳しくは表1参照)。

=0~13センター・シンボル。

=64,75,77,78,80,91~93,96,97,107,109,125,126特殊文

字の特殊記号。

=14~16,18~20,22~24,26~45,48~63,74,76,79,90,95,

106,108,110,111,122~124,127オプショナル文字の特殊記号。

=65~73,81~89,98~105,112~121英数字。

=999実線。

-206-

Page 8: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

-ム08-

11II11

9ウ881068L9gr8210

|¥lx来×人z丞十◇×+▽O□

88ZZ838838381111

1068499r881068L9

N《J

〔日

記一八CrJlm一一十垂日←一一V【っl

rr↑rrりりr8888688B

L99r831068499↑8Z

【□FD

印加Luョ○J.刀vNmxムイeのu河、ノく

99999999999999ワウ

681068L9gr881068

↑10×→jjrJ-L、--」「J▽一く一シ・一・フム

ムLLLLLLLL4999999

68L99r821068山99r

l+1ア.のIHnJ-。「コロコロ〕HU

6666668888888888

9↑881068499↑8810

-6.-し×+大ClⅡ□nUJUnUNNⅡW「-Ⅵ列Flb。

III111111111

1100000000006666

1068上99r88106BL9

.‐しく-7ん。⑩77--人v八MⅡハハ、ⅡILF「)ノノー

ー11II1111IIII11I

z88382881111111’

し99r821068499r8Z

“一一0.瓦:(○口)l」o)(」J惨hC)「/」TI〔U

HSdNOOvd)gNILnOuTOH川人SNI3TgvTIvAvSu3LOvllvHO

(輩81-に拳工)輩1r3IgだぞI華

(虫型弱*)裂圃jdルニニ々困聰・田・潮・醗沖蜂蜜丁。1-母侭ロー入X

Page 9: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

4)流れ図

SYPLT

(X1,Y1,X2,Y2,H,LTYPE)

実線で始点(XLY1),

終点(XaY2)を結ぶ

CALLPLOT(X1,Y1,3)

CALLPLOT(X2,Y2,2)

YES

実線の場合RETURTLTYPE=999

,へ?/

センター・シンボル,標準

および特殊記号の場合NO

11

XY

ll

22

XY

llll

XY

YESX=0.0? ANGLE=90.0

NO

THAI=ATAN(ABS(Y/X)/0.0174533=ATAN(ABS(Y/X)/0.0174533

YESY-0.0 ANGLE=THAI

NO

YESY<0.0 ANGLE=360.0-THAI

-208-

Page 10: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

始点と終点間の距離を得る

Z=SQRT(X**2+Y**2)

二点間に連続描写されるセンター・シンボルの個数Nを得

る。AL=7.0/40*HN=Z/AL≦三蘂;;i二二t:i:;11二

二点間に連続描写される標準お

よび特殊記号の個数Nを得る

N=Z/H

RETURNYES

個数N=O

~?-

連続描写されるシンボルが二点の中央になるように始点(X1,Y1)

よりANGLE方向に原点を移動する。

SHIFT=(Z-FLOAT(N)*H+H/7.0)/2.0

CALLSYMBOL(X1,Y1,SHIFT,IH,ANGLE,1)

-209-

Page 11: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

rlllllll1-lL

RETURN

RETURN

210

Page 12: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

r-------

4~ f>nt~ v:.; $')1I~ANGLE7JroJlcfNj <CALL S YMBOL( 999.0,999.0, H, LTYPE,- ANG'LE, - 1 )

L _

SUBROUTINE SYPLT<X1.Y1.X2.Y2.H.LTypE)IF<LTYPE.EQ.999)GO TO 99X-X2-X1y-Y2-Y1IF(X.EQ.O.O)GO TO 17THAI-ATAN(ABS(Y/X»/O.0174533IF<Y.GE.O.O)ANGLE-THAIIF<y.LT.O.O)ANGLE-360.0-THAIGO TO 19

17 ANGLE-90·019 Z-SQRT(X*X+Y*Y)

IF(LTYPE.LE.13)GO TO &1C--------IN THE CASE OF TOKUSHU KIGO -------­

N-Z/HIF( N) 15.15.14

14 SHIFT-(Z-FLOAT<N)*H+H/7.0)/2.0CALL SYMBOL(Xl.Y1.SHlFT.1H .ANGLE.l)HH-H/2.0CALL SYMBOL(999. 0.999·0,HH.47.ANGLE.O)00 18 I-l.NCALL SYMBOL(999.0.999.0. H•LTYPE.ANGLE.O)

18 CONTINUEGO TO 15

C-------IN THE CASE OF CENTER SYMBOL ~-----­61 AL-l.75*H

N-ZI ALIF(N)15.15.l6

1& SHIFT-(Z-fLOAT(N-l)*AL)/2.0CALL SYM80L(Xl.Yl.SHIFT.1H .ANGLE.l)00 66 I-l.N

- 211-

Page 13: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月.

CALLSYNBOL(999.00999.OomLTYPEoANGLEo-1)66CONTlNUE

GOTO15

C-----INTHECASEOFSTRA1GHTLINE--------99CALLPLOT(X1oY103)

CALLPLOmX2oY202)

15RETURNEND

ⅡKOTEN(交点座標)ルーチン

1)機能

この基本サブルーチンKOTENは任意の傾きの直線式と多角形図形との交点座

標群を求め,これらをSYPLTルーチンに送る役割をする。この場合の直線式は

1.傾きがAでY軸との交点がBのY=A*X+B,2.X軸に平行でY軸との

交点がBのY=B,3.Y軸に平行でX軸との交点がBのX=Bのいずれかであ

る。また多角形図形はN(=3)個の線分で囲まれた平面図形で,枠組みである

座標点の数はNとなるが,便宜上図形の終点座標を始点座標としN+1とする。

なお任意の直線式と多角形図形との交点座標群を求めるにあたり次のような処理

手順をとる。

①多角形の各々の辺に対し直線との交点があるかどうか確認し,もし存在す

ればその交点座標を得る。得られる交点座標群と多角形図形の位置関係は一

般的に図3に示すようになる。交点座標数が直線イ,ロ上のように偶数個あ

れば点P16とP14,P12とP6,P7とP9,P1とP11を結んだそれぞれの線分は

多角形図形内に存在する,然し直線二上のようにP3とP8を結んだ線分が多

角形図形内に存在しない場合は交点座標として扱わない。又直線ハワホ上の

ように奇数個ある場合は直線ホ上においてP5を,ハ上においてP13を交点

座標として取り扱わない。ここでの交点座標合否判定は次のように行う。図

4において辺1の始点aと辺2の終点bを結んだ線分辺3(但し,点a,b

を含まない)上に交点cが存在すれば点Pを交点座標とし,そうでなければ

-212-

Page 14: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

図3多角形図形と直線の交点座標の位麗関係

Pb二/

。。、WP

1ノ、

交点座標合否判定法図4

直線2(へ

~(

線1

bヘ

~、直線3

)a

-213-

Page 15: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

交点座標としない。つまり直線2上の点Pは交点座標,直線1および3上の

点Pは交点座標ではないとする。

②①で得られた偶数個の座標群をY軸に平行な直線式X=Bに対してはY値

の小さなものから順に配列し,それ以外の直線式に対しては(X値の)小さ

なものから順に配列する。

③配列された座標群より始・終点の組みあわせを行い,これらを順次サブル

ーチンSYPLTに送り込む。

なおサブルーチンZAHYOの呼び出し形式,流れ図,およびプログラムは次の

とおりである。

2)呼び出し形式

CALLKOTEN(X,Y,N,A,B,H,LTYPE)

3)パラメータの説明

(1)X,Y:多角形図形の枠組みである座標配列名(単位:センチ)。

(2)N:多角形図形の線分(辺)の数(N二3)。

(3)A:直線の+X方向となす傾き(但し,直線がX軸に平行な場合は0.0,

Y軸に平行な場合は999.0とする)。

(4)B:直線のY軸における交点(単莅:センチ)(但し,Y軸に平行な場

合はX軸との交点)。

(5)H:シンボルの高さ(単位:センチ)(サブルーチンSYPLTのHに相

当する)。

(6)LTYPE:始点と終点の間に連続描写されるシンボル・タイプ6

-214-

Page 16: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

4)流れ図

KOTEN

(XY N,A,B,H,LTYPE)

M=O

NNN-1

(雛驚磯鰯だ線分が)DOI=1NN「.

}

1CK=1

交点座標を得るXXO=X1

YYO-A*XXO+B

各辺(線分)の始点・終点座標を得る

X1=X(1)

Y1=Y(1)

X2=X(I+1)

Y2=Y(I+1) NO

(線分はY軸に平行)

型4-K万二555万~ト

AB/

’一一一?

A1AX、

NOAA=A

、?/

1=X2

、?/

YES

(交点なし)

YES

。NO M=M-1M=

YES

(交点なし)

YES

(線分はX軸に平行)

NOAA=

AB

llll

A1

AY AA=A

笠線分の傾き

AA=(Y1.

Y1-Y2

、?〆

AA=0.0

ンYESL二二芒三N0

項きを得る

Y1-Y2)/(X1-X2)

NO

線分の傾きを得る

AA=(Y1-Y2)/(X1-X2)交点座標を得る

XXO=B

YYO=Y1

YESA=999.0

YES NO

ユニミ〔YES

ABS(AA)<0.0、9- 交点座標を得る

YYO=Y1

XXO=(YYO-B)/公NO

NO④BS(AA)>999:

?-~

-215-

Page 17: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

守⑪fIIlll-lI1lllIl1lllllI1-ll--lIllllllIlIlIl1IL

/AA=A、Y1=A*X1+B

、?/

YES 。M=M-1

NO

YESAA=A

廷?/ (交点なし)

NO交点座標を得るXXO=B

YYO=AA*(B-X1)+Y1

YESA=999.0

へ?〆 YYO=AA*(B-X1)+Y1

NO

交点座標を得る

XXO=(AA*(X1+X2)-(Y1+Y2)+B*2.0)/((AA-A)*2.0)

YYO=A*XXO+B

蔦を得る

=(AA*(X1+X2)-(Y1+Y2)+B*2.0)/((AA-A)*2.0)

=A*XXO+B

r二余三if,または

2二YYO≦Y1⑧一く川筆鮮x:

X2≦XXO≦X1

YES

NOICK=1~?-

YESICK=1

~?〆 YES

M=M+l

XX(M)=XXOYY(M)=YYO

YESNO

nU/

’一CI

M、M=M-1

ICK=2=2NOⅢ》西麺禰

斜(B=綱>』く〈{柵=柵〉?

MM=M-1

YES YES

窯ICK=3

X1=X(N-DY1=Y(N-DX2=X(2)Y2=Y(2)

ICK=2

X1=X(I-DY1=Y(I-DX2=X(I+1)Y2=Y(I+1)

ICK=2

X1=X(I-DY1=Y(I-DX2=X(I+1)Y2=Y(I+1)

XX(KK)=XX(KK+D

YY(KK)=YY(KK+1)

INUE

CFD

-216-

Page 18: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

(交点座標群の配列を行う)

L=M-1

DOI=1「----つ

1+1

「-→ DOJ=K,M

A=999.0

~?-Y(1)<YY(J)~?/? YES YES

NO NO

配列を変

TX=XX

配列を変える

TX=XX(1)

XX(1)=XX(J)

XX(J)=TX

TY=YY(1)

YY(1)=YY(J)

YY(J)=TY

える

(1)

二XX(J)

二TX

(1)

:YY(J)

gTY

型D弓XXLll>耐YES TX=XX

XX(1);

XX(J);

TY=YY

YY(1):

YY(J):

NO

L CONTINUE

CONTINUE

DOI=1,M,2÷「

-217-

鶚CALLSYPLT(XX(1),YY(1),XX(I+1),

YY(I+1),H,LTYPE)

Page 19: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

lJft~*~· ai1tiJf~ em 21~). 1979 $12 j]

c

c

c

c

c

c

c

SUBROUTINE KOTEN(X.y.N.A.B.H.LTYPE)DIMENSiON X(450).Y(450).XX(30).YY(30)M-ONN-N-l

DO 13 1-1. NN1 CK-lX1-X(I)Yl-Y( I)X2-X(I+l)'f2-Y( 1+1)

150 IF(X1.Eg.X2)uO TO 4IF(Yl.Eg.Y2)GO TO 5GO TO D

4 AA-999.0IF(AA.EQ.A.ANO.XI.Eg.B)GO TO 142IF(AA.EU.A)GO TO 13XXO-Xl'f'f0-A*XXO+8GO TO 12

5 AA-O.OIF(AA.Eg.A.ANO.'fl.Eg.B)GO TO 142IF(AA.EQ.A)GO TO 13IF(A.Eg.999.0)GO TO 55yyO-Y1xXO-( yyO-B) / AGO TO 12

55 xxo-aYYO-Y 1GO TO i2

D AA-(Y1-y2)/(X1-X2)IF(ABS(AA).LT.O.01)GO TO 5IF(ABS(AA).GT.999.0)GO TO 4IF(AA·EQ.A.ANO.Y1.Eg.A*XI+B)GO TO 142IF(AA.Eg.A)GO TO 13IF(A.EQ.999. 0 )GO TO 7XXO-(AA*(X1+X2)-(Yl+Y2)+B*2·0)/(AA-A)*2.0)yYO-A*XXO+BGO TO 12

1 xxo-ayyO-AA*( B-X 1)+Y 1

12 IF<XXO.GE.X1.ANO.XXO.LE.X2)GO TO 41IF(XXO.GE.X2.ANO.XXO.LE.Xl)GO TO 41GO TO (13.142.143).lCK

41 IF(YYO.GE.Yl.ANO.YYO.LE.Y2)GO TO 51IF(YYO.GE.Y2.ANO.YYO.LE.Yl)GO TO 51GO TO (13.142.143).lCK

-218-

Page 20: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

C51 GO TO (131.13.13).ICK

131 IF(M.Eg.O)GO TO 134IF(XX(M).Eg.XXO.ANO.YY(H).Eg.yyO)GO TO 132IF(XX(l).Eg.XXO.AND.YY(l).Eg.yyO)GO TO 133

134 M-(1+1XX(M)-XXOyy( M)-YYOGO TO 13

C132 lCK-2

X1-X( 1-1)Yl-Y( 1-1)X2-X(I+1)Y2-Y( 1+ 1)GO TO 150

C133 I CK-3

X1-X<N-})Yl-Y (N-1)X2-X(2)y2-Y(2)GO TO 150

C142 M-M-1

GO TO 13C

143 (1M-(1-100 66 KK-1.MMXX<KK)-XX(KK+1)YY<KK)-YY(KK+l)

66 CONTINUE13 CONTINUE

Cl-M-100 10 1-1.lK-l+lDO 10 J-K.MIF(A.EQ.999.0)GO TO 77

.IF(XX(I).lE.XX(J»GO TO 10GO TO 8

77 IF(yY<l).lE.yy(J»GO TO 10

8 TX-XX(I)XX<I)mXX<J)XX<J)-TXTy-yy<l)yYCl )-yy(J)yY(J)-TY

10 CONTINUEC

C

00 34 1-1.(1.2CAll SYPlT(XX(I),VY(1).XX(1+1).YY(I+1).H.lTVPE)

34 CONTINUE

999 RET'URNENO

-219-

Page 21: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

Ⅱ-31,00(移動)ルーチン

1)機能

このサブルーチンIDOOは多角形図形の枠組みであるN個の座標点と,図形内

に連続描写される文字例の+X方向となす角度(THETA)および文字列間隔

(HABA)より下記のような処理を行う。

①角度(THETA)より直線式の傾きAを得る。(但し,THETA=0.0にお

いてはA=0.0,またTHETA=90.0においてはA=9990とする。)

②N個の座標点と傾きAの直線よりY軸上における交点Bの最大値(BMAX)

と最小値(BMIN)を求める。但しA=999.0の場合はX軸において最大値

(BMAX)および最小値(BMIN)を求める。

③文字列間隔(HABA)と直線の傾きAによりY軸上における交点Bの移動

を最大値(BMAX)より最小値(BMIN)方向に行う。但しA=9990の場

合はX軸上において同様に行う。

④交点Bが得られた時点で順次サブルーチンKOTENを呼び出し,交点Bが

最小値(BMIN)+H/2.0より小さければ終了する。

なおサブルーチンIDOOの呼び出し形式,流れ図およびプログラムは次のとお

りである。

2)呼び出し形式

CALLIDOO(X,Y,N,HABATHETA,H,LTYPE)

3)パラメータの説明

(1)X,Y:多角形の枠組みである座標配列名(単位:センチ)。

(2)N:枠組みの座標数(N二3)。

(3)LTYPE:連続描写されるシンボル・タイプ。

(4)THETA:連続描写される文字列が+X方向となしうる角度(単位:度)。

(5)HABA:図形内に連続描写される文字列間隔(単位:センチ)。

-220-

Page 22: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

4)流れ図

IDOO

(雪害雪瀧を) (X,Y,N,HABA,THETA,H,LTYPE)

CALLPLOT(X(1),Y(1),3)

DOI=1,N「 ̄ ̄--

CALLPLOT(X(1),Y(1),2)

CONTINUE1--,-----

鷺if塾I鰹lirwiJin④ THETA-90. ⑧

BMAX=X(1)BMIN-BMAX

→ DOI=2,NF

B=X(1)

BMAX二>BMAYES?

NO

YESBMIN=:<BMI

_?

NO

◎CONTINUE

221

Page 23: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

◎(THETA=900の場合)

B=BMAX

A=999.0

二B-HABA

RETURN<BMIN+H/2.~? ̄ YES

NO

CALLKOTEMX,Y,N,A,B,H,LTYPE)

④90.0の場合

noのj湯俘

JOCDC

D場舍

JO-[

800の場俘

-222-

Page 24: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

均0.0<THETA<90.0,ある

90.0<THETA<180.0にお

Y軸上の交点Bの最大値,最

を求める。

DOI=2,N

{0-.-110---I----lI-I1IlI1I-I1」

B=Y(1)-A*X(1)

BMAX=BB>BMAX

、?=〆 YES

NO

YES

BMIN=BB>BMIN

、?=

NO

CONTINUE

B=BMAX

DB=HABA/COS(TH)

B=B-DB

YES

両B<BMIN+H/2.0~ ?/

B<BMI

NO

CALLKOTEN(X,Y,N,A,B,H,LTYPE)

-223-

Page 25: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

(THETA=00の場合)

A=o0

BMAX=Y(1)

BMIN=BMAX

DOI=2,N「----→

B-Y(1)

BMAX=BB>BMAX

、?/ YES

NO

BMIN=BB<BMINYES

NO

L____ CONTINUE

BBMAX

B=B-HABA

B<BMIN+H/2.、?/

RETURNYES

NO

CALLKOTEN(X,Y,N,A,B,H,LTYPE)

-224-

Page 26: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

5)プログラム

SUBROUTINEIDOO(XoYoN0HABAoTlDIHENSIONX(450)oY(450)

CALLPLOT(X(1)oY(1),3)、01091■20N

l09CALLPLOT(X(1)oY(1),2)C

IF(THETA-90.0)10020030l01RTHETA)4.4.5

C-------THETA■O・O------C

4A■O・O

BHAX■Y(1)

BIIIN■BHAX

DO91■2oN

BW(1)

IF(B・GT・BNAX)BNAX■B

IF(B・LT・BHIN)BNIN■6

gCONTINUE

B■BHAX

mOB■B-HABA

IF(B・LT・BIIIN+W2.0)GOTO999CALLKOTEMXoYoNoA0BoH・LTYPE)GOTO100

C------OoO<THETA<90.O---C

5TII■THETA*0.0174533A■SIN(TH)ノCOS(TH)

6BHAX■Y(1)-A*X(1)BHlN■BIlAX

DO191■20NB■Y(1)-A*X(1)IF(B・GT・BHAX)BHAXmB

IF(B・LT・BIllN)BHIN■B

mCONTINUEB■BHAX

DB句HABA/COS(TH)

77B■B-DB

1F(B・LT・BNIN+H/2.0)GOTO999CALLKOTEN(X,YoN0AoBoHoLTYPE)

GOTO77C

C-------THETAm90・O----C

20BIlAX■X(1)

BHIN■BHAX

DO111■20NB■X(1)

IF(B・GT・BHAX)BNAX■B

IF(B・LT・BNIN)BIIIN画B

nCONTINUEB■BIIAX

A車999.0

1,00(XoYoN0HABAoTHETAoHoLTYPE)

-225-

Page 27: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

200B■B-HABA

IF(B・LT・BNIN+Ⅱ/2.0)GOTO999CALLKOTEN(XoYoN・ACB・HoLTYPE)GOTO200

C------------90.0<THETA<180.OC

3OTH■(180.O-THETA)*0.0174533A■-SIMTH)/COS(TH)

GOTO6

999CONTIWE

RETURNEND

Ⅱ-4SIKAKU(四角)ルーチン

1)機能

このサブルーチンSIKAKUは棒グラフの拠点(CX,CY),高さ(H),幅

(W)より枠組み(X(1),Y(1)),(X(2),Y(2)),……,(X(5),

Y(5))を算出する。

図5

(X(2),Y(2))

SIKAKUルーチンにおける基本概念図

(X(3),Y(3))

(X(1),Y(1))

および

(X(5),Y(5)) (X(4),Y(4))(CX,CY)

2)呼び出し形式

CALLSIKAKU(CX,CY,H,WbHABA,HEIGHTHETA,

LTYPE)

-226-

Page 28: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

3)パラメータの説明

(1)CX,CY:拠点となる座標(CX,CY)(単位:センチ)。

(2)H:棒グラフの高さ(単位:センチ)。

(3)W:棒グラフの幅(単位:センチ)。

(4)LTYPE:シンボル・タイプ。

(5)HEIGH:シンボルの高さ(単位:センチ)。

(6)THETA:棒グラフ内に表現される文字列が+X方向となす角度

:度)。

(7)HABA:文字列間隔(単位:センチ)。

4)流れ図

(単位

SIKAKU

(CX,CY,H,WbHABA,HEIGnTHETA,

LTYPE)

W1-W/2.0

棒グラフの枠組みである座標点を得る

X(1)=CX-W1

Y(1)=CY

X(2)=X(1)

Y(2)=Y(1)+H

X(3)=CX+W1

Y(3)=Y(2)

X(4)=X(3)

Y(4)=CY

X(5)=X(1)

Y(5)=Y(1)

CALLIDOO(X,Y,N,HABA,THETA,HEIGH,LTYPE)

RETURN

-227-

Page 29: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

5)プログラム

SUBROUTINESIKAKU(CXoCYoHoW0HABA,HEIGHoTHETA・LTYpE)DINENSIONX(5),Y(5)

W1■W2・O

X(1)mCX-U1Y(1)■CY

X(2)■X(1)

Y(2)■Y(1)+H

X(3)■CX十W1Y(3)■Y(2)

X(4)■X(3)

Y(4)■CY

X(5)■X(1)

Y(5)mY(1)C

CALLlOOO(XOY950IlABA,THETA0HEIGHoLTYPE)C

RETURNEND

Ⅱ-5CIRCLE(サークル)ルーチン

1)機能

このサブルーチンは円グラフ内あるいはドーナツ・グラフ内に表現される各

々の構成要素の枠組みを形成する座標群を得る役割をし,処理手順は次のとお

りとなる。但しグラフ内において特定な構成要素である場合は,円弧の中心座標

(XO,YO)は円の中心座標(XQYC)より角度(AN)(円弧上の中央点と中

心座標を通る線が+X方向となす角度)方向に半径(R)の0.1倍分移動する。

①円弧の中心座標と始点および終点を通る綜分が+X方向となす角度

ANGLE1およびANGLE2により構成比率(AA)(単位:影)を得る。

②角度(AN)を得る。

③構成比率値(AA)を角度(AN)方向に半径(R)および中心座標(XO,

YO)の円弧外にプロットする。

④円弧上の座標点はANGLE1からANGLE2方向に角度を1度ずつ増加さ

せて得られる等分点とする。

⑤内円の半径(RR)がゼロの場合は単純な円グラフで扇形になり,枠組みで

ある座標点は④で得られた座標点十中心座標(XO,YO)+始点の座標にな

る。

-228-

Page 30: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線.棒.円.地図グラフ作図法(米盛徳市)

図6CIRCLEルーチンにおける基本概念図

一一扇形の場合の座標点移動

------>半ドーナツ形の場合の座標点移動

庁の円弧 戸

、、夕

磯Z円弧の始点

己凹l2fii:<iijli二二〈jIlHン夛二:〆AN

掴ANGLE1

十X方向

(XqYO)円弧の中心座標

AA=(ANGLE2-ANGLE1)

/360.0*100.O

AN=(ANGLE1+ANGLE2)

/2.0

i二JⅧ

-229-

Page 31: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

⑥また半径(RR)が正の場合は(ドーナツ・グラフ内の)半ドーナツ形に

なるので,さらにANGLE2からANGLE1方向に角度を1度ずつ減少させ

て,内円の円弧上の等分点を得る。つまり④で得られた座標点十このステッ

プで得られた座標点十外円の円弧上の始点座標が図形の枠組みとなる。

⑦④~⑥において得た座標点をサブルーチンIDOOに送り終了する。

なおサブルーチンCIRCLEの呼び出し形式,流れ図およびプログラムは次の

とおりである。

2)呼び出し形式

CALLCIRCLE(XQYC,R,RR,K,ANGLE1,ANGLE2,

HABATHETA,H,LTYPE)

3)パラメータの説明

(1)XQYC:円グラフまたはドーナツ・グラフの中心座標(XC,YC)

(単位:センチ)。

(2)R:円グラフまたはドーナッツ・グラフの外円の半径(単位:センチ)。

(3)RR:内円の半径(単位:センチ)。

=00円グラフを形成するα

>00ドーナツ・グラフを形成する。

(4)K:特定要素であるかどうかを示す。

=1特定要素である。

=0特定要素でない。

(5)ANGLE1:外円の円弧の始点を通る半径が+X方向となす角度(単位

:度)。

(6)ANGLE2:外円の円弧の終点を通る半径が+X方向となす角度(単位

:度)。

(7)LTYPE:ハッチングに利用されるシンボルタイプ6

(8)H:シンボル(文字)の高さ(単位:センチ)。

-230-

Page 32: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円.地図グラフ作図法(米盛徳市)

THETA:図形内に表現される文字列が+X方向となす角度

HABA:図形内に表現される文字列間隔(単位:センチ)。

流れ図

(単位:度)。

⑨川4

CIRCLE

つG三色XST蝋登』illliJIi皇LANGm構成比AAを得る

AA=(ANGLE2-ANGLE1)/360.0*100.0

円弧の中央となる角度AM度),ANG(ラジアン)を得る

AN=(ANGLE1+ANGLE2)/2.O

ANG=AN*0.0174533

構成比AAを外円の円弧外に書くAK=K

XX=XC+R*(1.0+0.1*AK)*CON(ANG)

YY=YC+R*(1.0+0.1*AK)*SIN(ANG)

CALLNUMBER(XX,YY,0.25,AA,AN,2)

円弧の中心座標を定める

XO=XC+R*0.1*AK*COS(ANG)

YO=YC+R*0.1*AK*SIMANG)

THO=ANGLE1*0.0174533

MF=ANGLE2-ANGLE1+1.5

11=0

-231-

Page 33: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

「 ̄

モのl」111111 度二1母Cl

11-11+1

L-

「 ̄

L_

RETURN

-232-

畠--■

-勺

□三l血

筐径Rの円弧上において1度毎

分点を得る う

X(11)=XO+R*COS(THO)

Y(11)=YO+R*SIN(THO)

X(11)=XO+RR*COS(THO)

Y(11)=YO+RR*SIN(THO)

始点の座標を枠組みの最終座標とするII=11+1

X(11)=X(1)

Y(11)=Y(1)

CALLIDOO(X,Y,11,HABA,THETA,H,LTYPE)

Page 34: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

SUBROUTINE CIRCLE(XC,YC.R,RR.K.ANGLE1.ANGLE2,HABA.THETA,H,lTYPE)DIMENSiON X(450).Y(450)AA-(ANGLE2-ANGLE1)/360.0*100.0AN-(ANGLEi+ANGLE2)/2.0ANG-AN*0.0174533AK-KXX-XC+R*(1.0+0.1*AK)*COS(ANG)YY-YC+R*(1.0+0.1*AK)*SIN(ANG)CALL NUMBER(XX.yy.O.2s.AA,AN.2)XO-XC+R*O.1*AK*C6S( ANG)yO-YC+R*0.1*AK*SIN(ANG)

CTHO-ANGLE1*O.0174533MF-ANGLE2-ANGlE1+1.511-0DO 12 1-1.f1F11-11+1X(ll)-XO+R*COS(THO)y(ll)-YO+R*SIN(THO)THO-THO+O.0174533

12 CONTINUEC

IF(RR·Eg.O.O)GO TO 14C

DO 13 l-l,HF11-11+1X(II)-XO+RR*COS(THO)Y(II)-yO+RR*SIN(THO)THO-THO-0.0174533

13 CONTINUEGO TO 15

C

C

C

14 11-11+1Y(II)-yOX(II)-XO

15 11-11+1X( II ) -X( 1)Y( II) -y( 1)

CALL IDOO(X,y.II.HABA.THETA,H,LTYPE)

RETURNEND

-233-

Page 35: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

Ⅲ便用例

Ⅲ-1折れ線グラフ

〔例1〕との例は表2に示す項目A,BおよびCの時系列変動推移指数を基にし

て作図したものである。

表2A,BおよびCの推移指数

年度項目

1400 800 300 510 480 700

850 910 680 900 350 400

600 700 830 1200 100 900

ここでのY軸の長さは15.OCW1,年度毎の間隔は3.0cmIであり,項目Aの推移は実

線(整数コード999),Bの推移はマイナス記号(整数コード96)およびCの推

移はアスタリスク(整数コード11)を用いて表現した。なお,作図上で項目名表

示は省略してあり,作図結果の縮小率は68%である。

〔例1〕の主プログラム

DIIlENSIONIB(512”Y(4)oY1(6)oY2(6)oY3(6)CALLPLOTS(IBo512)Y(1)■0.O

Y(2)■1500.0C

REA、(3.10)(Y1(1)oY2(1)oY3(1).’■1.6)l0FORNAT(3F6.0)

TATE■15・ODELTAX■3.O

HEIGH■0.28

CALLSCALE(Y・TATE・2,1)XX■O・O

CALLPLOT(0.0.0.0.3)C

DO66N■106

AH■11+46

XX■XX+DELTAX

CALLPLOT(XX00.0.2)

CALLSYHBOL(XXoO・000.28013.0.0.-1)XX1■XX-0.28

CALLNUNBER(XX1.-1.0.0.28.AHC0.0.-1)CALLPLOT(XX00.003)

o6CONTINUE

-234-

47 48 49 50 51 52

A 1,400 800 300 510 480 700

B 850 910 680 900 350 400

C 600 700 830 1,200 100 900

Page 36: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

c

C

C

C

C

CALL AXlS(O.0.0.0.lHY.1.TATE.90.0.y(3).y(4»X1-0.0

DO 11 1-1.5X1-X1+DELTAXAY1-(Yl(I)-Y(3»/Y(4)BY1-(y2(1)-Y(3»/Y(4)CY1-(Y3(1)-Y(3»/Y(4)

X2-Xl+DEL TAXAY2-(Yl(I+1)-Y(3»/Y(4)BY2-(Y2(1+1)-Y(3»/Y(4)Cy2-(y3(1+1)-Y(3»/Y(4)

CALL SYMsaL(Xl.AY1.0.14.11.0.0.-1)CALL SypLT(Xl.AY1.X2.AY2.HEIGH.999)CALL SyHBOl(Xl.BY1.0.14.11.0.0.-1)CALL SyplT(Xl.BY1.X2.BY2.HEIGH.96)cALL SYHBCJL<Xl.CY1.0.14.11.0.0.-1)CALL SYPL T( Xl. CY 1.)(2. CY2. HE IGH. 11)

11 CCJNTINUE

CALL PlaT(o.o.O.O.999>STapEND

-235-

Page 37: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

〔例1〕の作図結果

肉、

蕊兼。 -弓

L「)

○m

のゴ

⑩ゴ

トゴ

00.0,00.oz【00.00100.08

【0[×

00.0900.0f100.0こ00.0

-236-

Page 38: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

Ⅲ-2棒グラフ

〔例2〕下記の例は10の設問に対するA,B,CおよびD層の解答者数(表3参

照)を層棒グラフ化したものである。ここではA,B,C,D層の順に上積みし

ていき,この場合,A層の棒グラフにおいてはアスタリスク(整数コード11)を

高さ014cm,傾き0度,文字列間の距離を0.14cmとし,B層においては実線(整

数コード999)を傾き45度,実線間の距離を0.07cmとし,C層においては実線を

傾き90度,実線間の距離を0.1cmとし,さらにD層においてはマイナス記号(整

数コード96)を高さ0.14Cl、,傾き0度,文字列間の距離を0.14cmとした。また各

各の棒グラフは幅1.0cmとしてあり,この棒グラフの作図にあたっては設問数

(この例では10)と最大解答者数(設問における各層合計の最大値(ここでは設

問7の724人))があらかじめ与えられることにした。

表3各々の設問に対する各層の解答者数

(単位:人)

設問

39 40 186

164 167 669

118 169 106 501

112 169 101 464

101

176

130 147 204 724

140 70 388

114 102 373

10 11

-237-

A B C , 合計

1 39 42 65 40 186

2 124 164 214 167 669

3 108 118 169 106 501

4 82 112 169 101 464

5 47 85 101 81 314

6 33 29 62 52 176

7 130 147 243 204 724

8 84 94 140 70 388

9 73 84 114 102 373

10 11 11 14 16 52

Page 39: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

主プログラムは次の処理を行う。

1)設問数(L)および最大解答者数(Y(2))と最小解答者数(Y(1))(ここで

は0人となる)を読む。

2)最大解答者数724人を20.mの長さに収まるようにスケーリングを行う。

3)各設問のナンバーリングを行う。この場合各棒グラフの拠点間の距難を1.2

cmとし,ナンバーリングはX軸より0.5cm下に位置づける。

4)各設問に対するA,B,CおよびD層の解答者数を読み込んだあとに,それ

ぞれの棒グラフの高さおよび拠点の座標を次のように定める。

(1)A層においては棒グラフの高さはYY1=(Y1-Y(3))/Y(4)となり,拠

点のX座標値をX1とすると,Y座標値は0.0(X軸上)となる。

(2)B層においては棒グラフの高さはYY2=(Y2-Y(3))/Y(4)となり,拠

点のX座標値はX1でY座標値はA層の棒グラフの高さとなる。

(3)C層においては棒グラフの高さはYY3=(Y3-Y(3))/Y(4)となり,拠

点のX座標値はX1でY座標値はA層とB層の棒グラフの高さの合計値と

なる。

(4)D層においては棒グラフの高さはYY4=(Y4-Y(3))/Y(4)となり,拠

点のX座標値はX1でY座標値はA,B,C層の棒グラフの高さの合計値

となる。

5)各層における棒グラフをサブルーチンSIKAKUを呼び出し形成する。

6)各設問に対して上記4)をくり返し行う。但しX座標値X1は1.2cmずつ増

えていく。

以下主プログラムと作図結果を示すがここでの作図結果の縮小率は79%である。

-238-

Page 40: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

C

0lHENSI6N IB(80).Y(4)CAll Pl6TS( lB. 80)REAo(3.l0)l.Y(l).Y(2)

10 FORMAT(12.2f4.0)CALL SCAlE(Y.20.0.2.1)CAll AXIS<0.O.0.O.lHy.l.20.0.90.0.Y(3).Y(4»XX-O.O06 66 "-l.LAM-HXX-XX+l.2XXI-XX-O.l4CALL NUM~ER(XXl.-O.S.O.28.AM.O.0.-1)

66 CONTINUE

Xl-O.ODO 99 I-l.lXl-Xl+1.2REAO(3.11)Yl.Y2.Y3.Y4

11 FORMAT(4f4.0)yYl-(Yl-Y(3»/y(4)PY 1-0. 0yy2-(Y2-Y(3»/Y(4)PY2-YY1YY3-(Y3-Y(3»/Y(4)PY 3-PY 2+YY 2yy4-(y4-Y(3»/Y(4)PY 4- PY 3+YY 3CALL SIKAKU(Xl.PY1.YYl.1.0.0.14.0.14.0.0.11)CALL SIKAKU(Xl.Py2.YY2.1.0.0.07.0.01.4S.0.999>CALL SIKAKU(Xl.PY3.YY3.1.0.0~1.0.01.90.0.999)

CALL SIKAKU(Xl.Py4.YY4.1.0.0.14.0.14.0.0.96)99 CONTINUE

CAll Pl6T(O.O.O.O.999)STOPEND

-239 -

Page 41: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

〔例2〕の作図結果

。□・ロロの

ロDODNト

。。。ロが四

ロロ。ロ□の

Iロロ・ロのゴ 雲霞震一

op0Qpが

、(

llll

』ロ』|

』』

一二一

』二二二』』二

二】二二二』』』

I。□。□刺、

DC・ロゴ⑪

'''1

ロDODの閂

llllll

。□。□の

麺ロロ。□

123LL5678910

-240-

Page 42: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線b棒・円・地図グラフ作図法(米盛徳市)

Ⅲ-3円・ドーナツ・グラフ

〔例3〕ここでは特にドーナツ・グラフを例にとり,6つの構成要素の値(A),

各要素のハツチング用としてのシンボル・タイプ(LTYPE),シンボルの高さ

(H),連続描写される文字列間隔(HABA),文字列が+X方向となす角度

(THETA),さらに特定な構成要素であるかどうかを示す値(K)を表4に定

義し作図する。

表4ドーナツ・グラフ内の要素およびパラメータ

123 45.6 112.5 20.0 50.0 30.0

HABA 0.25 0.25 0.1 0.15

0.25 0.14 0.01 0.01 0.1

LTYPE 96 999 999 64 11

THETA 0.0 45.0 45.0 90.0 45.0 135.0

ここでの中心座標(XC,YC)は(8.0,5.0),外円の半径(R)は6.0Cl、,およ

び内円の半径(RR)は2.0clmであり,処理手順は次のとおりである。

①縦l0c1n,横20cm、の長方形を6つ準備し,その中に各要素の表現形式を記

した後,そばにナンバーリングを行う。

②構成要素の値(A)を用いて各要素が円周上に円弧を描く場合の始点と中心

座標を結んだ線分が+X方向となす角度(ANGLE)を得る。

③各々の要素に対しサブルーチンCIRCLEを呼び出す。

なお主プログラムおよび作図結果(縮小率72%)は次のとおりである。

-241-

1 2 3 4 5 6

A 12.3 45.6 112.5 200 50.0 30.0

HABA 0.25 0.25 0.1 0.15 0.3 0.2

H 0.25 0.14 0.01 0.01 0.2 0.1

LTYPE 96 3 999 999 64 11

THETA 00 45.0 45.0 90.0 45.0 135.0

K 0 0 1 0 0 0

Page 43: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

c

C

C

c

C

C

(flJ3) C1)~7'1J1f7A

DIHENSION IB(40).X(S).y(S)DIMENSiON A(6).ANGLE(6).HABA(6).THETA(6).H(6).LTYPE(6).K(6)DATA XC.YC.R.RR.N/a.O.S.O.6.0.2.0.6/.K/O.O.l.O.O.OIDATA A/12.3.4S.6.112.S.20.0.S0.0.30.01DATA HABA/2*O.2S.0.1.0.1S.0.3.0.2/.H/O.2S.0.14.2*O.Ol.0.2.0 ~11

DATA LTYPE/96.3.999.999.64.11/.THETA/O•• 4s •• 4s •• 90•• 45•• 135.1CALL PL6TS(IB.40)

DO 10 l-l.NX(1)--2.0Y(1)-FL6AT(I-l)*2.0X( 2)-X( 1)Y( 2) -y ( 1)+1. 0X(3)-0.0Y(3)-Y(2)X(4)-0.Oy( 4) -y( 1)X(5)·X(I)y( 5)-Y( 1)CAlL IDOO(X.Y.S.HABA(I).THETA(I).H(I).LTYPE(I»XX--3.0YY-(Y(I)+Y(2»/2.0AI-ICALL NUMBER(XX.yy.O.2S.AI.O.0.-l)

10 CONTINUE

GOKEI-O.ODa 123 l-l.N

123 GaKEI-GOKEI+A(I)

IF(RR.Eg.O.O)CALL NUHBER(XC.YC-R-2.0.0.25.G6KEI.O.O.2)IF(RR.GT.O.O)CALL NUHBER(XC-RR/2•• YC.O.2S.G6KEI.O.O.2)

ANGLE(I)-360.O*A(1)/GOKEIDa 6 1-2.NANGLE(I)-ANGLE(I-l)+360.*A(I)/GaKEI

6 CONTINUE

AI-O.OA2-ANGLE( 1)CALL CIRCLE(XC.YC.R.RR.K(I).AI.A2.HABA(1).THETA(1).H(1).LTYPE(l»Da 124 1-2.NAI-ANGLE( 1-1)A2-ANGLE(I)CALL CIRCLE(XC,YC.R.RR.K(I).Al.A2.HABA(I).THETA(I).H(I).LTYPE(I»

124 CONTINUE

CALL PLOT(O.O.O.o.999)STapEND

-242-

Page 44: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

〔例3〕の作図結果

、の.

0,CD

~■

鰺蕊 149

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

□ず。ロト囚

才。ロト囚

才。ロト囚

才。ロト囚

才。ロト囚

ロト囚

ロト囚ト

へ』へ』へ』へ』臼臼

へ8

霞、三鑿團岡

|xxxがxxxx邪又xxxxx

lxxxxxズ

ヌxxxxx

(、 Ln ゴ 、 (Ⅵ 気

-243-

Page 45: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学o経済研究(第21号)1979年12月

Ⅲ-4地図グラフ

〔例4〕46都道府県を便宜上6種にランク付けし,これらの都道府県を各々のラ

ンクに従ってハッチングする。表5は各ランクに用いられるパラメータのシンボ

ル・タイプ(LTYPE),シンボルの高さ(H),連続描写される文字列間

隔(HABA),文字列が+X方向となしうる角度(THETA)の説明であり,表6

は各都道府県のランク付けを示す。但し表6の都道府県番号及び各々の境界デー

タはあらかじめコンピュータに記憶されている。

表5各ランクに用いられるパラメータ

-244-

1 2 3 4 5 6

LTYPE 64 96 999 999 3 11

H 025 0.14 0.01 0.01 0.1 0.1

HABA 0.28 0.2 014 0.1 0.2 0.2

THETA 0.0 45.0 45.0 90.0 45.0 90.0

Page 46: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

46都道府県のランク付け表6

クン1623153534354352

|フ

クン4415646234164423

|フ

北海道

又,主プロムの処理手順は次のとおりである。

①縦10cm,横20cmの長方形をランク数分準備し,それぞれに各ランクの表

現形式を記す。

②各都道府県の境界データを次々に読み出し,各々の境界線内にそれぞれのラ

ンクの表現形式を記す。

なお主プログラムおよび作図結果(縮小率58%)は次のとおりである。

-245-

都道府

県番号

都道府

県名フ ンク

都道府

県番号

都道府

県名フ ンク

都道府

県番号

都道府

県名フ ンク

1 鹿児島 4 17 兵庫 1 33 東■_

泉 6

2 宮崎 4 18 和歌山 6 34 埼玉 5

3 熊本 1 19 大阪 2 35 群馬 3

4 大分 5 20 奈良 3 36 新潟 4

5 福岡 6 21■_

」テ( 都 1 37 千葉 2

6 佐賀 4 22 滋賀 5 38 茨城 2

7 長崎 6 23 三重 3 39 栃木 4

8 高知 2 24 福井 5 40 福島 2

9 徳島 3 25 岐阜 3 41 山形 4

10 愛媛 4 26 愛知 4 42 宮城 2

11 香)I’ 1 27 石)11 3 43 秋田 5

12 山口 6 28 富山 5 44 岩手 2

13 広島 4 29 静岡 4 45 青森 4

14 島根 4 30 長野 3 46 北海道 5

15 岡山 2 31 神奈Ill 5

16 』鳥取 3 32 山梨 2

Page 47: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

C

C

C

C

~~*~. ~mSf~ (~21-l}) 1979~ 12 ~

DIMENSION XX(6).YY(6).X(4S0).Y(4S0)DIMENSION HABA(6).H(6).LTYPE(6).THETA(6).K(46)DATA HABA/O.28 •• 2•• 14.0.1.2*O.2/.H/O.2S.0.14.2*O.Ol.2*O.11DATA lTYPE/64.96.2*999.3.11/.THETA/O•• 2*4S•• 90•• 4S •• 90.1DATA K/4~4.1.S.6.4.6.2.3.4.1.6.4.4.2.3.1.6.2.3.1.5.3.S.

13·4.3.5.4.3.5.2,6.5.3.4.2.2.4.2.4.2.5.2,4,51

DO 11 l-1.6Al-lXX(1)--2.0YY( 1)--Al*2.0XX(2)-XX(1)YY(2)-YY(1)-1.0XX(3)-O.0YY(3)-YY(2)XX(4)-O.0YY( 4) -yy( 1)XX(5)-XX(1)YY(5)-YY(1)CALL IDOO(XX.YY.5.HABA(L).THETA(L).H(L).LTYPE(L»XXX--3.0YYY-(YY(1)+YY(2»/2.0CAll NUMBER(XXX.yyy.O.25.AL.270.0.-1)

11 CONTINUE

11-35SHUKU-0.3THO-270.0DO 10 LL-1.46M-K(II)N-1TH-THO*O.0174533IF(ll.EQ.1)GO TO 119GO TO 120

119 READ(71)I.X1.Y1120 XX1-X1-12.0

YY1-Yl-12·0X(1)-(XX1*COS(TH)-YY1*SIN(TH»*SHUKUY(1)-(XX1*SIN(TH)+YY1*COS(TH»*SHUKU

1 REAU(71.END m 99S)I.X1.Y1·IF(I.NE.II)GO TO 998XX1-X1-12'0YY1-Y1-12·0N-N+1X(N)-(xxi*cOS(TH)-YY1*SIN(TH»*SHUKUY(N)-(XX1*SIN(TH)+YY1*COS(TH»*SHUKUGO TO 1

998 N-N+1X(N)-X(l)Y(N)-Y(l)CALL IOOO(X.y.N.HA~A(H)'THETA(M).H(M).LTYPE(M»

II-I10 CONTINUE

-246-

Page 48: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

REWIND71STOP

ENU

〔例4〕の作図結果

16

蕊 ’

■■

篭i垂鑓iiワ

:"声氏

丙Z、■U、、、-巴、q、、_巴、

⑤ 、、ョも

H、斫<可F1uH再耳虹■■■

零画か画風,尽二風」K可亘

〈Q③

[風超日

一兵α

円日耳虹

rrH・ 、巳、、、、 ■■▼=_ ̄

、。H月寓可■■

『心 、

義0

' 蕊■■■■■■■■団■■■■■■■庁一口

■■■■由■丘二句■

鰯i騨班

篭い

Q、

fぎわ

、團霞鬘 園震○’J、

L型

5634

-247-

Page 49: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

Ⅳむすぴ

本稿では多角形図形内にセンター・シンボル,標準および特殊記号を用いて任

意の傾き,間隔にハッチングする手法の応用として,特に棒グラフ,円・ドーナ

ツ・グラフ,地図グラフ,および折れ線グラフを取り扱った。しかし,今日の複

雑な情報化社会においては必ずしもこれらのグラフでは充分でなく,他の特殊な

グラフ,例えば曲線グラフ,三角グラフ,くもの巣グラフ等が目的に応じて必要

とされる。

折れ線グラフおよび棒グラフの他の利用法については著者の"でXYプロッター

による折れ線グラフ作図法”と②XYプロッターによる棒グラフ作図法”(「琉

球大学経済研究」,第20号,1979)で論じてある。なお後者で説明してあるサブ

ルーチンZAHYO,GENDOおよびSIKAKUは作図法に無駄があるので本稿の

KOTEN,IDOOおよびSIKAKUをこれらの代わりに利用することが望ましい。

V参考文献

富士通,「PANAFACOMPSP文法書」,東京,富士通,1975.

南川利雄,「表・グラフの作り方」,東京,同文館,1977・

日本図学会,コンピュータグラフィックス委員会,「コンピュータによる自動

製図システム」,東京,目刊工業新聞社,1977・

田嶋太郎,「コンピュータ図学演習」,東京,コロナ社,1976゜

田嶋太郎,「コンピュータ図学」,東京,コロナ社,1977・

山口正雄,「コンピュータによる作図法」,東京,オーム社61975.

芳田剛小野博宣,田嶋太郎,「大学教養コンピュータ図学」,東京,コロナ

社,1976°

吉川弘之,「コンピュータグラフィック論」,東京,日科技連,1977。

-248-

Page 50: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

【付録】

プロッター・サブルーチン文法

PSPには基本サブルーチンが10種類(PLOTS,RPLOTS

PLOT,SYMBOLSCALE,LINE,NUMBER,AXIS,

WHERE,FACTOR)とそれにオプショナル・サブルーチンの

NEWPENがある力iここでは特に本稿で使用された基本サブル

ーチン6種類(PLOTSPLOT,SYMBOL,SCALE,

NUMBER,AXIS)のみを説明することにした。(詳細な説明

については『PANAFACOM・PSP文書法(O9SP-O170-1)U

(富士通,1975)を参照されたし。)

-249-

Page 51: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

PSP基本サブルーチン

〔1〕PLOTS(PlotStart)ルーチン

1)機能

PSPのオープン処理を行う。このサブルーチンはプロッタの初期設定をする

ものであるから他のすべてのPSP基本サブルーチンを呼び出す前に必ず一回呼

び出さなければならない。

2)呼び出し形式

CALL,PLOTS(IBUF,N)

3)パラメータの説明

(1)IBUF:整数の配列名でプロットするデータが格納される出力バッフ

ァ領域を指定する。

(2)N:出力バッファ領域の大きさを示し,30二N≦4,095とする。

〔2〕PLOT(P1otting)ルーチン

1)機能

ペンを現在の位置から指定した座標(X,Y)まで移動させたり.線画,原点

の再設定およびPSPの終了化処理を行う。

2)呼び出し形式

CALLPLOT(X,Y,IPEN)

3)パラメータの説明

(1)X,Y:ペンの移動を終了させる点の座標(単位:センチ)。

(2)IPEN:ペンのアップ・ダウンおよび原点変更を指定。

=2ペンをダウンさせ,現在位置より座標(X,Y)まで直線

を描く。

-3ペンをアップさせ現在位置より座標(X,Y)までペンの

位置を移動する。

=-2ペンをダウンさせ,現在位置より座標(X,Y)まで直

-250-

Page 52: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

線を描いた後,座標(X,Y)を原点に再設定する。

=-3ペンをアップさせ,現在位置より座標(X,Y)までペ

ンの位置を移動した後,座標(X,Y)を原点に再設定する。

=999ペンをアップさせ,現在位置より座標(X,Y)へペン

を移動した後,PSPを終了化し使用した出力バッファ領域

を解放する。

〔3〕SYrMBOL(P1OtSymbol)ルーチン

1)機能

文字又は文字列(英数字(標準記号),特殊文字(特殊記号,センターのシン

ボル))を描く。

2)呼び出し形式

CALLSYMBOL(X,Y,HEIGHT,IBCUTHETA,N)

3)パラメータの説明

(1)X,Y:描き始める文字の原点座標(単位:センチ)。

(2)HEIGHT:文字の高さ(単位:センチ)。

(3)IBCD:N>Oの場合,プロッタに描く文字列の格納されている変数名,

配列名を示す。

N=0の場合,上記に加え,文字の整数コードを指定する。

N<0の場合,センター・シンボルに対応する整数コードを指

定する(但し0≦IBCD≦13)。

(4)THETA:文字又は文字列が+X方向となす角度(単位:度)。

(5)N:整数型の定数または変数名で,プロットする文字の数およびモード

を指定する。

N>0の場合はIBCDに格納されている文字数を示し,座標

(X,Y)に位置決めした後,文字列を招く。

N=Oの場合はIBCDの右寄りの1文字又は整数コードを示し,

-251-

Page 53: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

座標(X,Y)に位置決めした後1文字を描く。

N=-1の場合は座標(X,Y)に位置決めした後,整数コードで

示されるセンター・シンボルを描く。

N=-2の場合は座標(X,Y)に線画した後,整数コードで示さ

れるセンター・シンボルを描く。

〔4〕SCALE(DataScaling)ルーチン

1)機能

座標データを軸の長さに収まるようにスケーリングしスケーリングファクター

(初期値と単位長当りの増分)を求める。

2)呼び出し形式

CALLSCALE(DARRAY,AXLEN,NPT,INC)

3)パラメータの説明

(1)DARRAY:座標データが格納されている一次元配列を指定する。

(2)AXLEN:座標軸の長さ(単位:センチ)。

(3)NPT:データの個数。

(4)INC:データ配列に格納されている座標データの間隔とスケーリング・

モードを指定する。

|INC|=1:連続して格納されている。

|INC|=2:1個おきに格納されている。

lINCI=n:(n-,個おきに格納されている。

INC>O:初期値はデータ配列中の最小値に近い値をとり,単位表あた

り増分は正となる。

INC<O:データ配列中の最大値に近い値をとり,単位長当りの増分は

負となる。なお初期値はDARRAY(NTP・lINCl+1)に】

単位長当りの増分はDARRAY(NPT・IINCl+lINCI+1)

に自動的に格納される。

-252-

Page 54: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

XYプロッターによる折れ線・棒・円・地図グラフ作図法(米盛徳市)

〔5〕NUMBER(PlotNumber)ルーチン

1)機能

指定された座標に対して位置決めした後,浮動小数点を10進数に変換して描く。

2)呼び出し形式

イト】卜

3)パラメータの説明

(1)X,Y‘描き始める文字の原点座標(単位:センチ)。

(2)HEIGHT:文字の高さ(単位:センチ)。

(3)FPN:描きたい数値を変数名または定数で指定。

(4)THETA:文字列とX方向となす角度(単位:度)。

(5)N:小数点以下何桁描くかを指定する(-9≦N≦9)。

N<-1:整数部分より,lNl-1だけ切って描く。

N=-1:整数部分のみ描く。

N=0:整数部分と小数点を描く。

N>0:整数部分,小数点および小数点以下N桁描く。

〔6〕AXIS(PlotAxis)ルーチン

D機能

指定された座標に対して位置決めした後,座標軸を描く。

2)呼び出し形式

-1LL

3)パラメータの説明

(1)X,Y:軸の始点座標(単位:センチ)。

(2)IBCD:座標軸の名前を文字定数で指定する。

(3)N:座標軸名の文字数およびモードを指定する。

(4)AXLEN:座標軸の長さ(単位:センチ)。

(5)THETA:座標軸が+X方向となす角度(単位:度)。

-253-

CALLAXIS(X,Y,IBCD,N,AXLEN,THETA,FIRST,DELTA)

Page 55: XYプロッターによる折れ線・棒・円・地図グラフ作 …ir.lib.u-ryukyu.ac.jp/bitstream/20.500.12000/3135/1/No21...Title XYプロッターによる折れ線・棒・円・地図グラフ作図法

琉球大学・経済研究(第21号)1979年12月

軸の初期値,SCALEルーチンで求めたDARRAY

(NPTIINCl+1)を指定する。

軸の自盛間(1センチ)の増分(単位あたりの増分),SCA‐

LEルーチンで求めたDARRAY(NPT・lINCI+lINCI

(6)FIRST:

(7)DELTA:

+1)を指定する。

-254-