Google
 

Trailing-Edge - PDP-10 Archives - BB-AI48A-BM - datatrieve/vt125/multi_bar_group.cdd-plot
There are 3 other files named multi_bar_group.cdd-plot in the archive. Click here to see a list.
HXvH)L:Nf HH
YLENGgHYASPECTGmGkSTRIDEGsGqPOINTSGyGwYORIGINHG}YBASEG+HYHIGH0G?G00G1LLABELFoG! G"COLORP FtFsCNT FzFyJCNT FcF~K FiFhTALLY FMFmOFFSET FRFQINDEX FXFWBARWIDTH F^F]BARX F*FbBARY F0F/YREF F6F4YLENGTH F;F:YMIN FAF@YMAX FGFEYSCALE FFKYLABEL FFXREF FFXLENGTH FFXMIN F$F#XMAX F)XSCALELHHHH# 0HH0XLABEL 0HH0LABEL1 0HH"0LABEL2 0HH(0LABEL3
H3HBHKHVH`HkHoIII3III_IxJJ$J=JKJYJhKHKPH/9H1HOUSEKEEPH: 0H=S(M 1(AH150L45S100)2(AH150L30S66)3(AH150L45S66))HH 0HJL(A1)HQ 0
HSL"X"FFFFFFFFFFFFFFFFH[ 0
H^L"Y"FFFFFFFFFFFFFFFFHf 0
HhL"Z"FFFFFFFFFFFFFFFFHxIGSH} 0 0IXIIGI 0 0I$HG+I) 0I=IDGSIA P 0IGYISIZGIW P PIiHG+Im PJJ
GSI| X 0J
ZJJ GJ X XJ.H#G+J3 XFJG!yF*JU"6@FJc"R`F0Jr
"5pJv0FF*FF0HFG9JxLABEL
FoKaG+KeLFcLFcL0NL$L)L/L40HL(0XL$L.Y1L)L3Y2L/L9Y3L@LYMMM:MhN#FMLI	L$G?L]Lj	MrNFM|FMN	 0N	L/FNFMN	 0N-NUFN7FMN;	 PNDL4FNNFMNR	 PXb
NjOOtO{PP;P}QQ(QBQ[RR+R[RcRgW9W`XQX]FRNz
FOO
OOOFcO 0G? 0FoO.FcFR
O8(FF*FoFRG?9O:X_LABEL
F6P
FF;P9P$LABEL
P@(F6F;GmGgGy9PBLABEL
HQQGyGmGgHQ8HGyHQRF0H
GsQkF*QuHGyRRHRGsR!F*F0
R/R<GyR9GsF*RLF9RNLABELR` 0Rb@:A FoW4G?RxSS9SF*GSSSG 0FiS2	S+S6FoS/ 0 XFtSDFcW. 0SMTTBVoW*FXS\
FSfFRT
TTSvTSoTFoSs 0FcT 0FtT 0 0F^T.FT8FiFt	TFVhF^TUF*TY 0TzUUOVV=VdT_TdTv 0TbW(I0STnGsTr 0 0Ty)PTUU	FXF^
 0UV	FR
U!U%U7UL 0U$T(A1)W(SU/GsU3 0U@GSFt 0UN)UUUXUkUpVV 0UWW(IUaGFt 0Un)P	FXF^
 0VV	VFRV
 0VV!V1V4 0V W(S0)P	FXGs
 0V3VF^VCVS	VLFRVP
 0V]GsVa 0VxWGWV}W
G 0FWFiFt	W' 0W)T(A0)WCF*GWPWGWTG 0W] 0W_@;@AWdHFF*FF0FRGGSGG+9WfLEGEND

XZ9X\HOUSEKEEPDEFINE PLOT MULTI_BAR_GROUP
DECLARE X_REF, X_LENGTH, X_MIN, X_MAX, X_SCALE
DECLARE Y_REF, Y_LENGTH, Y_MIN, Y_MAX, Y_SCALE, Y_LABEL
DECLARE INDEX, BAR_WIDTH, BAR_X, BAR_Y
DECLARE TALLY, OFFSET
DECLARE CNT, JCNT, K
DECLARE VECTOR Y_VALUE, Y_MX, COLOR
DECLARE STRING VECTOR L_LABEL, X_LABEL, HATCH
DECLARE REAL STRIDE, POINTS, Y_ORIGIN, Y_BASE, Y_HIGH
DECLARE REAL Y_LEN, Y_ASPECT
ENTRY 0 (X_LABEL : STRING,
         LABEL_1 : STRING,
         LABEL_2 : STRING,
         LABEL_3 : STRING)
BEGIN
    PLOT HOUSEKEEP 0
    PRINT "S(M 1(AH150L45S100)2(AH150L30S66)3(AH150L45S66))"
	    PRINT "L(A1)"
    PRINT "L""X""FFFFFFFFFFFFFFFF"
    PRINT "L""Y""FFFFFFFFFFFFFFFF"
    PRINT "L""Z""FFFFFFFFFFFFFFFF"
    HATCH(1) = "X"   COLOR(1) = 1   L_LABEL(1) = LABEL_1
    HATCH(2) = "Y"   COLOR(2) = 2   L_LABEL(2) = LABEL_2
    HATCH(3) = "Z"   COLOR(3) = 3   L_LABEL(3) = LABEL_3
"    X_REF = 100    Y_REF = 360    X_LENGTH = 600    Y_LENGTH = 350
!    PLOT LABEL 0 (X_REF,Y_REF,X_LENGTH,Y_LENGTH,X_LABEL,Y_LABEL)
LLABEL
        IF LENGTH(L_LABEL(CNT)) NE 0 THEN
            TALLY = TALLY + 1
END
ENTRY 1 (X : STRING, Y1, Y2, Y3)
BEGIN
    INDEX = SEARCH (X, X_LABEL)
	    IF INDEX EQ 0
	INDEX = SIZE (X_LABEL) + 1

    X_LABEL(INDEX) = X
EX * 3 - 2
    Y_VALUE(INDEX) = Y_VALUE(INDEX) + Y1
    Y_VALUE(INDEX + 1) = Y_VALUE(INDEX + 1) + Y2
    Y_VALUE(INDEX + 2) = Y_VALUE(INDEX + 2) + Y3
END
ENTRY 2
BEGIN
     BAR_WIDTH = X_LENGTH / (((TALLY + 1) * SIZE(X_LABEL)) + 1)
    CNT = TALLY * BAR_WIDTH
    PLOT X_LABEL 0 (X_REF, Y_REF, CNT, BAR_WIDTH, X_LABEL)
N(YVALUE)
VALUE)
    PLOT LABEL 3 (Y_MIN,Y_MAX)
    PLOT LABEL 10 (Y_MIN, Y_MAX, POINTS, STRIDE, Y_BASE)
    Y_HIGH = POINTS * STRIDE + Y_BASE
    Y_LEN = Y_HIGH - Y_BASE
    Y_ASPECT = Y_LENGTH / Y_LEN
    Y_ORIGIN = Y_REF + (Y_ASPECT * Y_BASE)

    IF Y_HIGH LE 0 THEN
	Y_ORIGIN = Y_REF - Y_LENGTH

    IF Y_BASE GE 0 THEN
		Y_ORIGIN = Y_REF
    PLOT LABEL 8 (Y_VALUE)
	    PRINT "@:A "
R XLABEL
    BEGIN
        Y_MX(SIZE(Y_MX) + 1) = Y_REF
        OFFSET =    (CNT - 1) * 3
        INCR JCNT FROM 1 TO TALLY
        BEGIN
	+            BAR_X = X_REF + BAR_WIDTH * (((CNT - 1) * (TALLY + 1)) + (JCNT - 1) + 1)
            BAR_Y = Y_VALUE(OFFSET + JCNT)
            IF BAR_Y LT (Y_REF - 1) THEN
	            BEGIN
                PRINT "W(I0S", LY(Y_ORIGIN - 1), ")P"
                PRINT LXY(BAR_X,BAR_Y), "V", RX(BAR_WIDTH)
&                PRINT "T(A1)W(S", LY(Y_ORIGIN - 1), QUOTE(HATCH(JCNT)), ")"

0                PRINT "W(I", CVT(COLOR(JCNT)), ")P", LXY(BAR_X,BAR_Y), "V", RX(BAR_WIDTH  - 1)
"                PRINT "W(S0)P", LXY(BAR_X,Y_ORIGIN), "V", LY(BAR_Y)
                PRINT RX(BAR_WIDTH - 1), LY(Y_ORIGIN - 1)
            END
            Y_MX(SIZE(Y_MX) + 1) = Y_VALUE(OFFSET + JCNT)
NT "T(A0)"
        END
    END
    Y_MX(SIZE(Y_MX) + 1)=Y_REF
	    PRINT "@;@A"

/    PLOT LEGEND 3 (X_REF, Y_REF, X_LENGTH, Y_LENGTH, BAR_WIDTH, Y_MX, HATCH, COLOR, L_LABEL)
    PLOT HOUSEKEEP 2
END
END_PLOT