Name: BARS 10,20 BARS plots bar graphs. The call is: CALL BARS (XRAY, Y1RAY, Y2RAY, N) level 2, 3 or: void bars (float *xray, float *y1ray, float y2ray, int n); XRAY is an array of user coordinates defining the po- sition of the bars on the X-axis. Y1RAY is an array of user coordinates containing the start points of the bars on the Y-axis. Y2RAY is an array of user coordinates containing the end points of the bars on the Y-axis. N is the number of bars. Notes: - Shading patterns of bars can be selected with SHD- PAT or MYPAT. Shading numbers will be incremented by 1 after every call to BARS. - Legends can be plotted for bar graphs. Name: BARTYP 20 The routine BARTYP defines vertical or horizontal bars. The call is: CALL BARTYP (CTYP) level 1, 2, 3 or: void bartyp (char *ctyp); CTYP is a character string defining the bar type. = 'VERT' means that vertical bars will be plotted. = 'HORI' means that horizontal bars will be plotted. If this parameter is used, XRAY defines the position of the bars on the Y-axis while Y1RAY and Y2RAY define the position of the bars on the X-axis. = '3DVERT' defines vertical 3-D bars. = '3DHORI' defines horizontal 3-D bars. Default: CTYP = 'VERT'. Name: BARMOD 20 BARMOD modifies the width of bars. The call is: CALL BARMOD (CMOD, COPT) level 1, 2, 3 CMOD is a character string that can have the values 'FIXED' and 'VARIABLE'. If CMOD = 'VARIABLE', the width of bars plotted by the routine BARS will be variable. In that case, XWTH should have a positi- ve value in BARWTH since the width of bars is cal- culated in a simular way as described in BARWTH. COPT is a character string that must contain the value 'WIDTH'. Default: ('FIXED', 'WIDTH'). Name: BARPOS 20 The position of the bars is determined by the parameters XRAY, Y1RAY and Y2RAY. The routine BARPOS can be used to select prede- fined positions. The parameters XRAY, Y1RAY and Y2RAY will con- tain the calculated positions. The call is: CALL BARPOS (COPT) level 1, 2, 3 or: void barpos (char *copt); COPT is a character string that defines the position of the bars. = 'NONE' means that the positions are defined only by the parameters in BARS. = 'TICKS' means that the bars will be centred at major ticks. XRAY must be a dummy vector. = 'AXIS' means that vertical bars start at the X-axis and horizontal bars at the Y-axis. Y1RAY must be a dummy vector. = 'BOTH' activates the options 'TICKS' and 'AXIS'. XRAY and Y1RAY must be dummy arrays. Default: COPT = 'NONE'. Name: BARGRP 20 The routine BARGRP puts bars with the same axis position into groups. The number of group elements should be the same as the number of calls to the routine BARS. The call is: CALL BARGRP (NGRP, GAP) level 1, 2, 3 or: void bargrp (int ngrp, float gap); NGRP is the number of bars defining one group. GAP defines the spacing between group bars. If GAP is positive, the value GAP * W is used where W is the width of a single bar. If GAP is negative, the po- sitive value of GAP is used where GAP must be spe- cified in plot coordinates. Name: BARCLR 20 The routine BARCLR defines the colours of bars. Different col- ours can be defined for the sides of 3-D bars. The call is: CALL BARCLR (IC1, IC2, IC3) level 1, 2, 3 or: void barclr (int ic1, int ic2, int ic3); IC1, IC2, IC3 are colour numbers between -1 and 255 for the front, side and top planes of 3-D bars. The value -1 means that the corresponding plane is plotted with the current colour. Default: (-1, -1, -1). Name: BARBOR 20 The routine BARBOR defines the colour of borders plotted around the bars. By default, a border in the current colour is plotted around 2-D bars, and borders in the foreground colour are plot- ted around 3-D bars. The call is: CALL BARBOR (IC) level 1, 2, 3 or: void barbor (int ic); IC is a colour number between -1 and 255. Default: IC = -1 Name: BAROPT 20 The routine BAROPT modifies the appearance of 3-D bars. The call is: CALL BAROPT (XF, ANG) level 1, 2, 3 or: void baropt (float xf, float ang); XF is a floatingpoint number that defines the depth of bars. IF XF = -1., the bar width is used for the bar depth. IF XF > 0., XF is interpreted as the bar depth specified in plot coordinates. ANG defines an angle measured in degrees between the front and side planes of 3-D bars. Default: (-1., 45.). Name: PIEGRF 21 PIEGRF plots pie charts. The call is: CALL PIEGRF (CBUF, N, XRAY, NSEG) level 1 or: void piegrf (char *cbuf, int n, float *xray, int nseg); CBUF is a character string containing text lines for segment labels. More than one line can be defined for labels. CBUF must be created with LEGLIN after calling LEGINI. If N is 0 in the parameter list, CBUF can be a dummy variable. N is the number of text lines used for one segment label. XRAY is an array of user coordinates. NSEG is the dimension of XRAY. Notes: - The centre and the size of pies is defined by a region that can be changed with the routines AXS- POS and AXSLEN. - PIEGRF sets the level to 2. Titles and legends can be plotted after PIEGRF is called. - Segment labels can contain several lines of text and the data values specified in PIEGRF. Data va- lues can also be converted to percent values. - Segment labels are contained within a box where the thickness of the border can be changed with FRAME. Name: PIETYP 21 The routine PIETYP defines 2-D or 3-D pie charts. The call is: CALL PIETYP (CTYP) level 1, 2, 3 or: void pietyp (char *ctyp); CTYP is a character string defining the pie type. = '2D' defines a 2-D pie chart. = '3D' defines a 3-D pie chart. Default: CTYP = '2D'. Name: CHNPIE 21 CHNPIE defines colours and shading patterns for pie graphs. The call is: CALL CHNPIE (CATT) level 1, 2, 3 or: void chnpie (char *catt); CATT is a character string defining segment attributes. = 'NONE' means that all pie segments will be plotted with the current colour and shading pattern. = 'COLOR' means that every segment will have a different co- lour. = 'PATTERN' means that every segment will have a different shading pattern. = 'BOTH' means that every segment will have both a diffe- rent colour and shading pattern. Default: CATT = 'PATTERN'. Note: The sequence of colours is: WHITE/BLACK, RED, GREEN, YELLOW, BLUE, ORANGE, CYAN, MAGENTA. The sequence of shading patterns is 0 - 17. Colour and pattern cycles can be changed with CLRCYC and PATCYC. Name: PIECLR 21 The routine PIECLR defines colours for single pies. Different colours can be defined for the top and front sides of 3-D pies. PIECLR has no effect if the routine CHNPIE is called with the parameters 'COLOR' or 'BOTH'. The call is: CALL PIECLR (NC1RAY, NC2RAY, N) level 1, 2, 3 or: void pieclr (int *nc1ray, int *nc2ray, int n); NC1RAY, are integer arrays containing colour numbers be- NC2RAY tween -1 and 255 for the top and front sides of pies. The value -1 means that the current colour is used. N is the dimension of NC1RAY and NC2RAY. Name: PIEBOR 21 The routine PIEBOR defines the colour of borders plotted around the pies. By default, a border in the current colour is plotted around 2-D pies, and borders in the foreground colour are plot- ted around 3-D pies. The call is: CALL PIEBOR (IC) level 1, 2, 3 or: call piebor (int ic); IC is a colour number between -1 and 255. Default: IC = -1 Name: PIEOPT 21 The routine PIEOPT modifies the appearance of 3-D pies. The call is: CALL PIEOPT (XF, ANG) level 1, 2, 3 or: void pieopt (float xf, float ang); XF is a scaling number that defines the thickness of pies. The thickness is set to XF * radius. ANG defines an view angle measured in degrees. Default: (0.2, 45.). Name: PIELAB 21 The routine PIELAB defines character strings that can be plotted on the left or right side of data values within segment labels. The call is: CALL PIELAB (CLAB, CPOS) level 1, 2, 3 or: void pielab (char *clab, char *cpos); CLAB is a character string displayed in segment labels. CPOS is a character string that defines the position of CLAB. = 'LEFT' means that CLAB will be plotted on the left side of data values. = 'RIGHT' means that CLAB will be plotted on the right side of data values. Note: If percent and data values are plotted in segment labels, PIELAB is only used for data values. Name: PIEEXP 21 Pie segments will be offset by 8% of the radius if PIEEXP is called. The call is: CALL PIEEXP or: void pieexp (); Note: Single segments will be offset if the correspon- ding values in PIEGRF are negative. Name: PIEVEC 21 PIEVEC modifies the arrows plotted between segments and labels that lie outside of segments. The call is: CALL PIEVEC (IVEC, COPT) level 1, 2, 3 or: void pievec (int ivec, char *copt); IVEC defines the arrow head (see VECTOR). COPT is a character string that defines the vector plotted between segments and labels. = 'NONE' suppresses vectors. = 'STRAIGHT' means that straight vectors will be plotted. = 'BROKEN' means that broken vectors will be plotted. Default: (2301, 'BROKEN'). Name: USRPIE 21 USRPIE is a user-defined subroutine that can modify pie charts such as suppressing certain labels. USRPIE is called by PIEGRF for each segment. The call is: CALL USRPIE (ISEG, XDAT, XP, NRAD, NOFF, ANG, NVX, NVY, IDRW, IANN) or: void usrpie (int iseg, float xdat, float xp, int *nrad, int *noff, float *ang, int *nvx, int *nvy, int *idrw, int *iann); ISEG is the segment index (starting with 1). XDAT is the data value of the segment as specified in PIEGRF. XP is the percent value of XDAT. NRAD is the segment radius in plot coordinates. NOFF is the segment offset in plot coordinates (de- fault: 0). ANG is the offset angle measured in degrees in a counter-clockwise direction. The default value is the angle which bisects the segment. NVX, NVY shifts the segment label in the X- and Y-direction by NVX and NVY plot coordinates. IDRW defines the plotting of segments. If IDRW = 0, plotting will be suppressed (default: 1). IANN defines the plotting of labels. If IANN = 0, la- bels will be suppressed (default: 1). Note: The first 3 parameters of USRPIE are only given for information and cannot be changed by the user.