Google
 

Trailing-Edge - PDP-10 Archives - BB-AI48A-BM - datatrieve/vt125/stacked_bar.cdd-plot
There are 3 other files named stacked_bar.cdd-plot in the archive. Click here to see a list.
G+XHLM.0G?G/0G1LLABEL 0GSGC0GEXALABELGF~FYVALUEPGG FhFgK FnFmLN FsFrTALLY FGFxOFFSET FLFKBARY FRFQBARX F*FVBARBOTTOM F0F/YREF F6F4YLENGTH F;F:YMIN FAF@YMAX FFEYLABEL FFXREF FFXLENGTH FFXMIN F$F#XMAX F)XWIDTHKjGfGlGrGx 0G+Gk0XLABEL 0GfGq0LABEL1 0GlGw0LABEL2 0GrG}0LABEL3
H	HH H+H5H@HDHZHoIII4IMIcIxJJ J.J<KK$H9HHOUSEKEEPH 0HS(M 1(AH150L45S100)2(AH150L30S66)3(AH150L45S66))H 0HL(A1)H& 0
H(L"X"FFFFFFFFFFFFFFFFH0 0
H3L"Y"FFFFFFFFFFFFFFFFH; 0
H=L"Z"FFFFFFFFFFFFFFFFHMHUGSHR 0 0HWXHcHkGHh 0 0HyGlG+H~ 0IIGSI P 0IYI(I/GI, P PI>GrG+IB PIVI^GSI[ X 0I`ZIlItGIq X XJGxG+I| XFJ!yF*J)"6@FJ8"R`F0JF	"5pJK0FF*FF0GfFA9JMLABEL	
FXK5G+K:KTFnKcFnKg 0M(KxLLL 0G+K}0X KxLY1 LL
Y2 LLY3LL;LML KxG?L.L%L2G? 0LELFyLSLILWFy 0LiLFyLwLnL{Fy 0MLFyMMM Fy 0Wl
M2N`OIOiPPP
TTTXT|UU7UNUgVVV7VWW[WhFXN[G?MCM`N9F]MYMRM]FXMV0XFcNNN(MoNFcF;
F;Fc
F$NpNtN{ PG? 0O
(FF*F$F$G?9OXLABEL
OoFy9OqLABELP 0P@:AFXTJG?PPAP^QQ%T&P'F*GP4P+P8G 0FsPWPPP[FXPT 0 XFLPmFPwF$Q
FXQT0P0FGF*F]Q0FnT"0QOQTQ8Q<QL0Q;W(I0SQEFGQI00QN)QYTQcF*FyQmFsF]RRRbSSNStTFRFGFGRFGR(F*R2FyR<FsF]Q|RFRURX0QP	FLFG0RWV	F$VFXGV 0G%V-GSFnV@VPGSFnGSVT 0VaG%GSVe 0VnHFF*FF0F$GGSGG+9VpLEGEND	
DEFINE PLOT STACKED_BAR
DECLARE X_REF, X_LENGTH, X_MIN, X_MAX, X_WIDTH
DECLARE Y_REF, Y_LENGTH, Y_MIN, Y_MAX, Y_LABEL
DECLARE BAR_Y, BAR_X, BAR_BOTTOM
DECLARE CNT, JCNT, K, LN, TALLY, OFFSET
DECLARE VECTOR Y_VALUE, Y_MX, COLOR

DECLARE STRING STNG
DECLARE STRING VECTOR L_LABEL, X_LABEL, HATCH
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
    X_LABEL(SIZE(X_LABEL) + 1) = X
    Y_VALUE(SIZE(Y_VALUE) + 1) = Y1
    Y_VALUE(SIZE(Y_VALUE) + 1) = Y2
    Y_VALUE(SIZE(Y_VALUE) + 1) = Y3
END
ENTRY 2
BEGIN
 XLABEL
    BEGIN
        JCNT =    (CNT - 1) * 3
#        K = Y_VALUE(JCNT + 1) + Y_VALUE(JCNT + 2) + Y_VALUE(JCNT + 3)
        IF K GT Y_MAX THEN
            Y_MAX = K
    END
    X_WIDTH = X_LENGTH / ((2 * SIZE(X_LABEL)) + 1)
    PLOT X_LABEL 0 (X_REF, Y_REF, X_WIDTH, X_WIDTH, X_LABEL)
    PLOT LABEL 3 (Y_MIN, Y_MAX)
    PLOT LABEL 8 (Y_VALUE)
    PRINT "@:A"
 XLABEL
    BEGIN
        Y_MX(SIZE(Y_MX) + 1) = Y_REF
        OFFSET =    (CNT - 1) * 3
        BAR_X = X_REF + X_WIDTH * (((CNT - 1) * 2) + 1)
        BAR_Y = Y_REF
        INCR JCNT FROM 1 TO TALLY
        BEGIN
            PRINT "W(I0S", LY(BAR_Y - 1), ")"
            IF Y_VALUE(OFFSET + JCNT) LT Y_REF THEN
	            BEGIN
                BAR_BOTTOM = BAR_Y
!                BAR_Y = BAR_Y - (Y_REF - Y_VALUE(OFFSET + JCNT))
                 PRINT "P", LXY(BAR_X, BAR_Y), "V", RX(X_WIDTH)
'                PRINT "T(A1)W(S", LY(BAR_BOTTOM - 1), QUOTE(HATCH(JCNT)), ")"
	,                PRINT "W(I", CVT(COLOR(JCNT)), ")P", LXY(BAR_X,BAR_Y), "V", RX(X_WIDTH)
#                PRINT "W(S0)P", LXY(BAR_X,BAR_BOTTOM), "V", LY(BAR_Y)
                PRINT RX(X_WIDTH), LY(BAR_BOTTOM - 1)
            END
        END
        Y_MX(SIZE(Y_MX) + 1) = BAR_Y
    END
    PRINT "T(A0)@;@A"
    Y_MX(SIZE(Y_MX) + 1) = Y_REF
&    STNG = L_LABEL(TALLY)   L_LABEL(TALLY) = L_LABEL(1)   L_LABEL(1) = STNG
$    CNT = COLOR(TALLY)     COLOR(TALLY) = COLOR(1)       COLOR(1) = CNT
%    STNG = HATCH(TALLY)     HATCH(TALLY) = HATCH(1)       HATCH(1) = STNG
	*    PLOT LEGEND 3 (X_REF,Y_REF,X_LENGTH,Y_LENGTH,X_WIDTH,Y_MX,HATCH,COLOR,L_LABEL)
    PLOT HOUSEKEEP 2
END
END_PLOT