class %ZEN.Report.Display.COSChart.cpieChart
extends cchart
This is an SVG chart component that displays a pie chart.
The plotBy property specifies how the slices of the chart and their labels
should be calculated.
The size of each slice is adjusted proportionally so that a complete circle is formed.
The colors of the slice is determined by the seriesColors property.
If there are more slices than colors, then the colors are repeated.
parameter DEFAULTAPPEARANCE = "3D";
Default appearance of this component.
parameter DEFAULTHOLESIZE = 0;
Default size of hole in center of the chart.
property holeSize
as %ZEN.Datatype.float(MAXVAL="0.9",MINVAL=0) [ InitialExpression = ..#DEFAULTHOLESIZE ];
This controls whether a hole is displayed in the center of the
pie chart, and if so, how big the hole is.
The value of this property is a percentange of the chart's
radius along the x axis. If the size of the chart is changed,
the size of the center hole will maintain its proportional size.
The value can range from 0 to 0.9. The default value is 0.
Set this to 0.2 to display a "donut chart".
property pieHeight
as %ZEN.Datatype.float(MAXVAL=1,MINVAL=0) [ InitialExpression = 0.33 ];
For pie charts with appearance set to "3D",
this controls the apparent height of 3D pie chart.
The value of this property is a percentange of the chart's
radius along the x axis. If the size of the chart is changed,
its depth will maintain its proportional size.
The value can range from 0 to 1. The default value is 0.33.
property pieScale
as %ZEN.Datatype.float [ InitialExpression = 1.0 ];
Scaling factor used to compute size of pie within the chart.
The default scaling value is 1.0. A value larger than 1.0 makes the pie
bigger relative to the chart's plot area; a value smaller than 1.0 makes the
pie smaller.
property plotBy
as %ZEN.Datatype.string(VALUELIST=",auto,items,series,both") [ InitialExpression = "auto" ];
Specifies how the pie chart will plot its data.
- "items" - plot a slice for every item within this chart's data. If
there are multiple data series, each slice represents the total of each item
summed across the data series.
The labels for the slices are treated as Y axis labels: the onGetLabelY event handler is
called to get the label values, or the labels are provided by a %ZEN.Auxiliary.dataController
if present.
- "series" - plot a slice for every data series within this chart's data.
Each slice represents the total value of all items within each series.
The labels for the slices are specified by the seriesNames property.
- "both" - plot a slice for each item within each data series (that is, there
will be seriesCount * seriesSize slices).
The slices are labeled as items; the chart legend will display the series names.
- "auto" - automatically select the appropriate way to display data based on how many data
series and items are present.
property rotateBy
as %ZEN.Datatype.float [ InitialExpression = 0 ];
If specified, rotate the pie chart by this amount (in degrees).
property showPercentage
as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
If true, percentage values (rounded to nearest integer) are displayed as
part of the label for each slice.
method getChartElementStyle(series, item)
Return default style for slice element.
method getLegendLabels()
Return an array of labels to display within the Legend box.
Override to get appropriate labels for Pie Chart.
method getPlotBy()
Determine the actual plot by method for this chart.
method hasAxes()
Indicates that this chart has no axes and associated grids
method hasMultiples()
Indicates that this chart supports "show multiples" mode.
method is3D()
Do not show 3-D plot area.
method renderSeries(group)
Draw data series for this chart.
group is the SVG container for the chart components.