Syntax
[C/C++:]
void ggFillMultiHistogram(int type, float *rdata, int ndim1, int ncols, int ndata, float frac, float gap, int line[], int is1, int is2);
[F90:]
subroutine ggFillMultiHistogram(type, rdata, ndim1, ncols, ndata, frac, gap, fill, line, is1, is2)
integer, intent(in) :: type, ndim1, ncols, ndata
real, intent(in) :: rdata(ndim1,*), frac, gap
integer, intent(in) :: fill(*),line(*), is1, is2
Arguments
type
Type of multi-histogram chart
|
= GSTACKED |
Data sets stacked in single column |
|
= GCLUSTERED |
Data sets displayed as multiple columns |
rdata
Two dimensional array, of dimension
ndim1,* giving the heights of the columns in each of the data sets
ndim1
The first dimension of the data array
rdata
ncols
The number of compound columns, or clusters of columns to be drawn. This can be from 1 to
ndim1
ndata
The number of data sets for each column or column cluster to be drawn. This can be from 1 to the second dimension of the data array
rdata
frac
Fraction of an interval to be filled for each column or column cluster
gap
Size of gap between members of the cluster, as a fraction of the width of a single member of the cluster. Range 0.0 to 1.0 (only used for type GCLUSTERED)
fill
Integer array, of dimension
ndata, determining the fill style to be used to fill each data set. The corresponding component of each column will be drawn with the same fill style
|
< -1 |
Specifies no fill and no boundary |
|
=  GHOLLOW |
Specifies boundary only |
|
=  GSOLID |
Specifies a solid fill |
|
=  GFINELEFTDIAGONAL |
} |
|
=  GFINERIGHTDIAGONAL |
} |
|
=  GFINEHORIZONTALGRID |
} |
|
=  GFINEDIAGONALGRID |
} |
|
=  GFINEHORIZONTALMESH |
} Specifies the hatch |
|
=  GFINEDIAGONALMESH |
} style index |
|
=  GCOARSEHORIZONTAL |
} |
|
=  GCOARSELEFTDIAGONAL |
} |
|
=  GCOARSERIGHTDIAGONAL |
} |
|
=  GCOARSEHORIZONTALGRID |
} |
|
=  GCOARSEDIAGONALGRID |
} |
|
=  GCOARSEHORIZONTALMESH |
} |
|
=  GCOARSEDIAGONALMESH |
} |
|
>256 |
Specifies a solid fill for software fill, or the fill style index for hardware fill |
line
Integer array, of dimension
ndata, determining the line style to be used to fill each data set. The corresponding component of each column will be drawn with the same line style
|
= GCURRENT |
Specifies the current line style |
|
= 1 to 256 |
Specifies the line style index |
|
>256 |
Specifies the current line style |
is1
The start position in the first dimension of the data array to be used as the first item (category) on the discrete axis
is2
The start position in the second dimension of the data array to be used as the first component on the continuous axis (or first column of cluster)
Description
The routine ggFillMultiHistogram() fills the columns of a multi-data set Histogram with respect to the current axes as set up by ggSetAxesPos() and ggSetAxesScaling(). If a discrete axis has not been defined using ggSetAxesScaling(), or both axes have been defined as discrete axes, the discrete axis is assumed to be the X axis. Linear scaling is assumed as the default for the Y axis.
The routine is designed to display a stacked or clustered histogram representing a block of data from an arbitrarily sized two dimensional array -
rdata. Where
ndim1 is the first dimension of the array and
is1 and
is2 specify the starting offset of the data block. The dimensions of the data being represented is
ncols by
ndata, where
ncols is the number of data items in each set and
ndata is the number of data sets.
The width of each stacked column or clustered column = ((length of the discrete axis)/
ncols) *
frac where a value of 0.99 will cause either the stacked column or clustered column to nearly touch the adjacent column. Values of
frac outside the range 0.0 to 1.0 are clipped to 0.1 and 0.9 respectively with values between 0.5 and 0.9 giving the most satisfactory results.
All the columns of each data set [i] are filled in the fill style specified by
fill[i] and the line style specified by
line[i].
See Also
ggFillMultiHistogram UsageggBlockFillHistogramggBlockFillMultiHistogram