Class FacetChart

All Implemented Interfaces:
HasAttachHandlers, HasHandlers, EventListener, HasVisibility, IsWidget, LogicalStructure, HasChartBackgroundDrawnHandlers, HasChartDrawnHandlers, HasDataLabelClickHandlers, HasDataLabelHoverHandlers, HasLegendClickHandlers, HasLegendHoverHandlers, HasValueClickHandlers, HasZoomChangedHandlers, DataBoundComponent, HasDrawEndHandlers, HasDrawStartHandlers, HasClearHandlers, HasClickHandlers, HasDoubleClickHandlers, HasDragCompleteHandlers, HasDragMoveHandlers, HasDragRepositionMoveHandlers, HasDragRepositionStartHandlers, HasDragRepositionStopHandlers, HasDragResizeMoveHandlers, HasDragResizeStartHandlers, HasDragResizeStopHandlers, HasDragStartHandlers, HasDragStopHandlers, HasDropCompleteHandlers, HasDropHandlers, HasDropMoveHandlers, HasDropOutHandlers, HasDropOverHandlers, HasFetchDataHandlers, HasFocusChangedHandlers, HasHoverHandlers, HasHoverHiddenHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseStillDownHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasMovedHandlers, HasParentMovedHandlers, HasResizedHandlers, HasRightMouseDownHandlers, HasRuleContextChangedHandlers, HasScrolledHandlers, HasShowContextMenuHandlers, HasVisibilityChangedHandlers

HTML5-based charting engine, implementing all chartTypes of the Chart interface.

Can be used directly, or specified as ListGrid.chartConstructor or CubeGrid.chartConstructor.

NOTE: you must load the standard Drawing and Optional Charts modules before you can use FacetChart. Also, the Charts Module is available in Pro Edition or better, please see smartclient.com/product for licensing information.

To create a FacetChart, set facets to an Array of Facet objects describing the chart dimensions and valueProperty to value field name. For example:

  // Creating data
  Record sprRec = new Record();
  sprRec.setAttribute("season", "Spring");
  sprRec.setAttribute("temp", "79");
  Record sumRec = new Record();
  sumRec.setAttribute("season", "Summer");
  sumRec.setAttribute("temp", "102");
  Record autRec = new Record();
  autRec.setAttribute("season", "Autumn");
  autRec.setAttribute("temp", "81");
  Record winRec = new Record();
  winRec.setAttribute("season", "Winter");
  winRec.setAttribute("temp", "59");
  
  // Creating chart
  FacetChart chart = new FacetChart();
  chart.setFacets(new Facet("season", "Season"));
  chart.setValueProperty("temp");
  chart.setData(new Record[]{sprRec, sumRec, autRec, winRec});
  chart.setTitle("Average temperature in Las Vegas");
  

A DataSource may be provided instead of inline data to use the chart as a DataBoundComponent. In this case, facetFields may be provided instead of facets, to specify which DataSource fields to use as the facets. If neither is set, the framework will attempt to auto-derive the facetFields. The valueProperty will also be auto-derived for databound charts if it hasn't been set in the chart instance.

The following SDK examples demonstrate charts with a single facet:

See the following SDK examples for examples of charts with multiple facets:

the Inlined Facet

Having an "inlined facet" is another method to provide data to the chart. In this case each CellRecord contains multiple data values; one facet definition is considered "inlined", meaning that the facetValueIds from this facet appear as properties in each Record, and each such property holds one data value. In this case the singular valueProperty is ignored. For example:

  // Creating data
  CellRecord lvRec = new CellRecord();
  lvRec.setAttribute("spring", "79");
  lvRec.setAttribute("summer", "102");
  lvRec.setAttribute("autumn", "81");
  lvRec.setAttribute("winter", "59");
  
  // Creating inlined facet
  Facet inlinedFacet = new Facet();
  inlinedFacet.setInlinedValues(true);
  inlinedFacet.setValues(
          new FacetValue("spring", "Spring"),
          new FacetValue("summer", "Summer"),
          new FacetValue("autumn", "Autumn"),
          new FacetValue("winter", "Winter")
  );
  
  // Creating chart
  FacetChart chart = new FacetChart();
  chart.setFacets(inlinedFacet);
  chart.setData(new Record[]{lvRec});
  chart.setTitle("Average temperature in Las Vegas");
  
Example with two facets:
  // Creating data
  CellRecord lvRec = new CellRecord();
  lvRec.setAttribute("city", "Las Vegas");
  lvRec.setAttribute("spring", "79");
  lvRec.setAttribute("summer", "102");
  lvRec.setAttribute("autumn", "81");
  lvRec.setAttribute("winter", "59");
  CellRecord nyRec = new CellRecord();
  nyRec.setAttribute("city", "New York");
  nyRec.setAttribute("spring", "60");
  nyRec.setAttribute("summer", "83");
  nyRec.setAttribute("autumn", "66");
  nyRec.setAttribute("winter", "40");
  
  // Creating inlined facet
  Facet inlinedFacet = new Facet();
  inlinedFacet.setInlinedValues(true);
  inlinedFacet.setValues(
          new FacetValue("spring", "Spring"),
          new FacetValue("summer", "Summer"),
          new FacetValue("autumn", "Autumn"),
          new FacetValue("winter", "Winter")
  );
  
  // Creating chart
  FacetChart chart = new FacetChart();
  chart.setFacets(inlinedFacet, new Facet("city", "City"));
  chart.setData(new Record[]{lvRec, nyRec});
  chart.setStacked(false);
  chart.setTitle("Average temperatures");
  

Dual axis or multi-axis charts

FacetChart supports drawing multiple vertical axes. This is commonly used to show values with different units (for example: sales in dollars, total units shipped) and/or very different ranges (for example: gross revenue, profit) on the same chart. Each set of values, referred to as a "metric", gets its own axis and gradation marks.

To use multiple axes, you add an additional facet called the "metric facet" that specifies each axis to be plotted as a facetValueId. The metric facet is an inlined facet, so as with inlined facets in general, each CellRecord has a value for each facetValueId of the metric facet. You then set extraAxisMetrics to the list of metrics that should be plotted as additional axes.

For example, if you were plotting revenue and profit for each month of the year, you would have one facet named "metric" with facetValueIds "revenue" and "profit" and a second facet "month". Each CellRecord would have the revenue and profit for one month, stored under the properties "revenue" and "profit". Setting extraAxisMetrics to ["profit"] would cause profit to be plotted as the second axis. See the Dual Axis SDK sample for an example.

You can have multiple extra axes and the additional axes and gradation tics will be drawn at increasing distances from the chart. By default, the first metric is drawn as a column chart and subsequent metrics are drawn as lines; you can override this via extraAxisSettings. See the 3+ Axes SDK sample for an example of multiple extra axes.

Multi-axis, multi-facet charts are also allowed. Extending the previous example, you might add a new facet "company", for a total of 3 facets. Each CellRecord would have "revenue" and "profit" for one combination of "company" and "month". The default appearance in this case would show revenue as clustered columns (one cluster per month, one column per company) and would show profit as multiple lines (one per company). See the Multi-Series SDK sample for an example of a multi-axis, multi-facet chart.

Mixed plots

In some cases you want to show some data series as one shape and other data series as another shape but use the same axis. This is commonly used when one series is of a fundamentally different kind than the other series (for example, a projection or average) but still has the same scale.

To achieve a mixed plot like this, define it as a multi-axis chart as explained above, but set MetricSettings.showAxis false to avoid a second axis appearing, and set MetricSettings.matchGradations to cause the same gradations to be used for both plots.

See the Mixed Plots SDK example.

Histogram Charts

A "histogram" chart is similar to a stacked "column" chart, showing multiple facet values vertically for each position along the x-axis / data label facet, but instead of each vertical facet value being defined only by a length, a "histogram" chart defines a segment for each, represented by both a start point (the "value property") and an end point (the "endValue metric").

Segments may overlap, with the last segment drawn receiving the highest z-ordering. To override this default behavior, values may be provided using an additional metric - zIndexMetric - whose value must be a non-negative integer no greater than maxDataZIndex.

Scatter Charts

Scatter charts differ from other chart types in that both axes represent continuous numeric data rather than a discrete set of facet values (like months of the year). For this reason Scatter charts use the same concept of a "metric" facet as is used by Dual-Axis charts, where the metric facet is expected to have exactly two metrics: the xAxisMetric and yAxisMetric.

Unlike all other chart types, a scatter plot may be specified with only the metric facet. However one additional facet can be defined, which allows multiple sets of x,y points to be drawn in different colors, analogous to the different colors of a multi-series line chart.

See the Scatter Plot SDK example.

Date values on the X axis

FacetChart also supports scatter charts where the x-axis represents date- or time-valued data and the y-axis represents numeric data, as normal. To enable this mode all records in the data must have values for the facetValueId of the xAxisMetric that are true Date objects, not Strings or nulls. For these charts, vertical lines are drawn to represent a sequence of significant datetime values on the x-axis, such as the first day of the month or week. The mechanism used to select these Dates and format them into the x-axis labels is the same mechanism used by charts with labelCollapseMode set to "time".

Bubble Charts

A "bubble" chart is a type of scatter chart where the size of each rendered data point represents an additional metric value, allowing 3 continuous data values to be visualized together. When using chartType:"Bubble", the additional metric is configured via pointSizeMetric. Points will be sized between the minDataPointSize and maxDataPointSize, optionally with logarithmic scaling. A legend will be included showing how point size represents data values, and a multi-facet Bubble chart can optionally use a different shape for each facetValue via useMultiplePointShapes.

Variable-size points can also be used with other, non-scatter chart types (such as "Line" or "Radar") when showDataPoints is enabled, by setting pointSizeMetric to the FacetValue.id of a facetValue of the metric facet. In this case, a legend for point sizes is not shown by default, but can be enabled via showPointSizeLegend.

Whenever drawing variable size data points, by default, the largest data points are drawn first so that smaller data points are less likely to be completely occluded by larger data points, but this can be disabled by setting autoSortBubblePoints to false. Visual appearance of data points can be further customized by setting the bubbleProperties.

See the Bubble Chart SDK example.

Color Scale Charts

FacetChart supports rendering an additional metric value as the color of each data point. This feature requires that showDataPoints be enabled and is configured via colorScaleMetric. Instead of data points being drawn using a separate color for each facetValue of the legend facet, the data points will be drawn using a color interpolated between the scaleStartColor and scaleEndColor, optionally with logarithmic scaling. A legend is included by default via showColorScaleLegend that shows how the data values are mapped to a color via a gradient over the range of colors used in the chart. Visual appearance of data points in color scale charts can be further customized by setting the bubbleProperties, just as with bubble charts.

Note that when color is being used to show values of the colorScaleMetric then color cannot be used to distinguish between different facetValues. Therefore color scale charts cannot have a (non-metric) legend facet.

See the Color Scale Chart SDK example.

Three-Facet Bar and Column Charts

Bar and Column charts support having three facets declared, unlike most other charts supporting data labels, which only allow two. With three facets, the first two are shown as data label facets, as separate rows of labels, and the third facet is used as the legend facet.

You can use features such as stacking and extra axes with a three-facet Bar or Column chart, but certain chart settings are incompatible:

In addition, with a three-facet chart, you can only call setChartType() to switch between Bar and Column charts. Switching to other types is not supported.

Take a look at this example to see this feature in action.

Notes on printing

FacetCharts support printing on all supported desktop browsers. When using Pro Edition or better with the Smart GWT Server Framework installed, charts can also be exported to PDF via RPCManager.exportContent() or to images via RPCManager.exportImage().

  • Constructor Details

    • FacetChart

      public FacetChart()
    • FacetChart

      public FacetChart(JavaScriptObject jsObj)
  • Method Details

    • getOrCreateRef

      public static FacetChart getOrCreateRef(JavaScriptObject jsObj)
    • changeAutoChildDefaults

      public static void changeAutoChildDefaults(String autoChildName, Canvas defaults)
      Changes the defaults for Canvas AutoChildren named autoChildName.
      Parameters:
      autoChildName - name of an AutoChild to customize the defaults for.
      defaults - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see SGWTProperties.
      See Also:
    • changeAutoChildDefaults

      public static void changeAutoChildDefaults(String autoChildName, FormItem defaults)
      Changes the defaults for FormItem AutoChildren named autoChildName.
      Parameters:
      autoChildName - name of an AutoChild to customize the defaults for.
      defaults - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see SGWTProperties.
      See Also:
    • create

      protected JavaScriptObject create()
      Overrides:
      create in class DrawPane
    • setAllowBubbleGradients

      public FacetChart setAllowBubbleGradients(boolean allowBubbleGradients) throws IllegalStateException
      Setting this flag to false prevents the chart from drawing fill gradients into the bubbles of each data point. This flag is required to be set for IE8 and earlier in order to draw bubble charts displaying high volumes of data.
      Parameters:
      allowBubbleGradients - New allowBubbleGradients value. Default value is !(isc.Browser.isIE && isc.Browser.version <= 8)
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getAllowBubbleGradients

      public boolean getAllowBubbleGradients()
      Setting this flag to false prevents the chart from drawing fill gradients into the bubbles of each data point. This flag is required to be set for IE8 and earlier in order to draw bubble charts displaying high volumes of data.
      Returns:
      Current allowBubbleGradients value. Default value is !(isc.Browser.isIE && isc.Browser.version <= 8)
      See Also:
    • setAllowedChartTypes

      public FacetChart setAllowedChartTypes(ChartType... allowedChartTypes)
      Other chart types that the end user will be allowed to switch to, using the built-in context menu.

      The actual list of ChartTypes displayed in the context menu may be a subset of allowedChartTypes, since the FacetChart will automatically disallow certain modes that are clearly invalid, for example, not allowing switching to Pie mode if either canZoom is enabled, or if the chart is multi-axis.

      Parameters:
      allowedChartTypes - New allowedChartTypes value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getAllowedChartTypes

      public ChartType[] getAllowedChartTypes()
      Other chart types that the end user will be allowed to switch to, using the built-in context menu.

      The actual list of ChartTypes displayed in the context menu may be a subset of allowedChartTypes, since the FacetChart will automatically disallow certain modes that are clearly invalid, for example, not allowing switching to Pie mode if either canZoom is enabled, or if the chart is multi-axis.

      Returns:
      Current allowedChartTypes value. Default value is null
    • setAutoRotateLabels

      public FacetChart setAutoRotateLabels(Boolean autoRotateLabels) throws IllegalStateException
      Deprecated.
      As of Smart GWT 9.0 this property is replaced by the property rotateLabels. Setting rotateLabels to "auto" is equivalent to setting autoRotateLabels to true. Setting rotateLabels to "never" is equivalent to setting autoRotateLabels to false.
      Whether to automatically rotate labels if needed in order to make them legible and non-overlapping.
      Parameters:
      autoRotateLabels - New autoRotateLabels value. Default value is true
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getAutoRotateLabels

      public Boolean getAutoRotateLabels()
      Deprecated.
      As of Smart GWT 9.0 this property is replaced by the property rotateLabels. Setting rotateLabels to "auto" is equivalent to setting autoRotateLabels to true. Setting rotateLabels to "never" is equivalent to setting autoRotateLabels to false.
      Whether to automatically rotate labels if needed in order to make them legible and non-overlapping.
      Returns:
      Current autoRotateLabels value. Default value is true
    • setAutoScrollContent

      public FacetChart setAutoScrollContent(boolean autoScrollContent)
      When set to true, introduces scrollbars when this widget is smaller than the specified chart-content minimum width or height. These minimum sizes limit all chart-content, including data and labels, titles and legends.

      See autoScrollData for a means to introduce scrolling according to the data being displayed.

      If this method is called after the component has been drawn/initialized: Sets autoScrollContent and updates the chart.

      Parameters:
      autoScrollContent - whether the chart should automatically show scrollbars when it's size is smaller than the minimum content width or height. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
    • getAutoScrollContent

      public boolean getAutoScrollContent()
      When set to true, introduces scrollbars when this widget is smaller than the specified chart-content minimum width or height. These minimum sizes limit all chart-content, including data and labels, titles and legends.

      See autoScrollData for a means to introduce scrolling according to the data being displayed.

      Returns:
      Current autoScrollContent value. Default value is false
    • setAutoScrollData

      public FacetChart setAutoScrollData(boolean autoScrollData)
      For some chart-types, should the chart body be automatically expanded and scrollbars introduced according to data?

      When true for a column, histogram, line, or area chart that has facet values displayed along the x-axis, the chart expands horizontally, showing a scroll bar, if that's needed to make room for the facet value labels or, for column and histogram charts, to make space for the minimum configured bar \n thicknesses or the margins between them.

      When true for a Bar chart, expansion and scrollbar are vertical, and also make space for the minimum configured bar thicknesses or the margins between them.

      Note that this feature is incompatible with the following properties:

      If rotateLabels is set to "auto" it will be treated as "never" if autoScrollData has been set. If any of the other properties have non-default values, a warning will be logged and autoScrollData will be disabled. The factors used to drive expansion can be limited by setting AutoScrollDataApproach. You can also enforce a minimum size for the chart-content, and scrollbars will be introduced if this widget shrinks below that size. See autoScrollContent, along with minContentWidth and minContentHeight.

      If this method is called after the component has been drawn/initialized: Sets autoScrollData and updates the chart.
      Parameters:
      autoScrollData - whether chart should automatically expand and show scrollbars to accommodate content. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getAutoScrollData

      public boolean getAutoScrollData()
      For some chart-types, should the chart body be automatically expanded and scrollbars introduced according to data?

      When true for a column, histogram, line, or area chart that has facet values displayed along the x-axis, the chart expands horizontally, showing a scroll bar, if that's needed to make room for the facet value labels or, for column and histogram charts, to make space for the minimum configured bar \n thicknesses or the margins between them.

      When true for a Bar chart, expansion and scrollbar are vertical, and also make space for the minimum configured bar thicknesses or the margins between them.

      Note that this feature is incompatible with the following properties:

      If rotateLabels is set to "auto" it will be treated as "never" if autoScrollData has been set. If any of the other properties have non-default values, a warning will be logged and autoScrollData will be disabled. The factors used to drive expansion can be limited by setting AutoScrollDataApproach. You can also enforce a minimum size for the chart-content, and scrollbars will be introduced if this widget shrinks below that size. See autoScrollContent, along with minContentWidth and minContentHeight.
      Returns:
      Current autoScrollData value. Default value is false
      See Also:
    • setAutoScrollDataApproach

      public FacetChart setAutoScrollDataApproach(AutoScrollDataApproach autoScrollDataApproach)
      If set, overrides the default behavior of autoScrollData, potentially limiting what factors drive the automatic expansion of the chart. (The "both" setting is no different than the default of null.)

      When labels are on the x-axis, and if you're sizing bars very tightly to labels by defining getMinClusterSize(), you may not want label-driven expansion, as the default separation assigned between them is very generous, and is based on the widest labels. (You may also set minLabelGap to gain more control over the separation.)

      If this method is called after the component has been drawn/initialized: Sets AutoScrollDataApproach and updates the chart.

      Parameters:
      autoScrollDataApproach - what should drive horizontal expansion of the chart?. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getAutoScrollDataApproach

      public AutoScrollDataApproach getAutoScrollDataApproach()
      If set, overrides the default behavior of autoScrollData, potentially limiting what factors drive the automatic expansion of the chart. (The "both" setting is no different than the default of null.)

      When labels are on the x-axis, and if you're sizing bars very tightly to labels by defining getMinClusterSize(), you may not want label-driven expansion, as the default separation assigned between them is very generous, and is based on the widest labels. (You may also set minLabelGap to gain more control over the separation.)

      Returns:
      Current autoScrollDataApproach value. Default value is null
      See Also:
    • setAutoSortBubblePoints

      public FacetChart setAutoSortBubblePoints(boolean autoSortBubblePoints) throws IllegalStateException
      Whether to draw data points in order of descending point size so that small values are less likely to be completely occluded by larger values. Set this to false to draw the data points in the same order that they appear in the data.
      Parameters:
      autoSortBubblePoints - New autoSortBubblePoints value. Default value is true
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getAutoSortBubblePoints

      public boolean getAutoSortBubblePoints()
      Whether to draw data points in order of descending point size so that small values are less likely to be completely occluded by larger values. Set this to false to draw the data points in the same order that they appear in the data.
      Returns:
      Current autoSortBubblePoints value. Default value is true
      See Also:
    • setAxisEndValue

      public FacetChart setAxisEndValue(Double axisEndValue) throws IllegalStateException
      End value for the primary axis of the chart.

      If set to an explicit value, this will be respected. If unset, the axis end value will default to a value large enough to the largest data point, rounded up to the nearest (next) gradation.

      For multi-axis charts, Bubble charts, and Scatter charts, the facetChart.axisEndValue affects only the first axis of the chart. End values for other axes of multi-axis charts can be set on a per-axis basis via MetricSettings.xAxisEndValue. For Scatter charts, the xAxisEndValue property must be used to set the end value of the x-axis.

      Note that if this chart's data includes points that fall above this value, they are ommitted and effectively treated as null values. For charts showing a data line, developers may wish to set discontinuousLines to true in this case.

      Parameters:
      axisEndValue - New axisEndValue value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getAxisEndValue

      public Double getAxisEndValue()
      End value for the primary axis of the chart.

      If set to an explicit value, this will be respected. If unset, the axis end value will default to a value large enough to the largest data point, rounded up to the nearest (next) gradation.

      For multi-axis charts, Bubble charts, and Scatter charts, the facetChart.axisEndValue affects only the first axis of the chart. End values for other axes of multi-axis charts can be set on a per-axis basis via MetricSettings.xAxisEndValue. For Scatter charts, the xAxisEndValue property must be used to set the end value of the x-axis.

      Note that if this chart's data includes points that fall above this value, they are ommitted and effectively treated as null values. For charts showing a data line, developers may wish to set discontinuousLines to true in this case.

      Returns:
      Current axisEndValue value. Default value is null
    • setAxisStartValue

      public FacetChart setAxisStartValue(Double axisStartValue) throws IllegalStateException
      Start value for the primary axis of the chart.

      If set to an explicit value, this will be respected. If unset, the axis start value will default to 0, or to a value that makes good use of vertical space based on minDataSpreadPercent.

      For multi-axis charts, Bubble charts, and Scatter charts, the facetChart.axisStartValue affects only the first axis of the chart. Start values for other axes of multi-axis charts can be set on a per-axis basis via MetricSettings.axisStartValue. For Scatter charts, the xAxisStartValue property must be used to set the start value of the x-axis.

      Note that if this chart's data includes points that fall below this value, they are ommitted and effectively treated as null values. For charts showing a data line, developers may wish to set discontinuousLines to true in this case.

      Parameters:
      axisStartValue - New axisStartValue value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getAxisStartValue

      public Double getAxisStartValue()
      Start value for the primary axis of the chart.

      If set to an explicit value, this will be respected. If unset, the axis start value will default to 0, or to a value that makes good use of vertical space based on minDataSpreadPercent.

      For multi-axis charts, Bubble charts, and Scatter charts, the facetChart.axisStartValue affects only the first axis of the chart. Start values for other axes of multi-axis charts can be set on a per-axis basis via MetricSettings.axisStartValue. For Scatter charts, the xAxisStartValue property must be used to set the start value of the x-axis.

      Note that if this chart's data includes points that fall below this value, they are ommitted and effectively treated as null values. For charts showing a data line, developers may wish to set discontinuousLines to true in this case.

      Returns:
      Current axisStartValue value. Default value is null
    • setBackgroundBandProperties

      public FacetChart setBackgroundBandProperties(DrawRect backgroundBandProperties) throws IllegalStateException
      Properties for background band
      Parameters:
      backgroundBandProperties - New backgroundBandProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getBackgroundBandProperties

      public DrawRect getBackgroundBandProperties()
      Properties for background band
      Returns:
      Current backgroundBandProperties value. Default value is null
    • setBandedBackground

      public FacetChart setBandedBackground(Boolean bandedBackground) throws IllegalStateException
      Whether to show alternating color bands in the background of chart. See backgroundBandProperties.
      Parameters:
      bandedBackground - New bandedBackground value. Default value is true
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getBandedBackground

      public Boolean getBandedBackground()
      Whether to show alternating color bands in the background of chart. See backgroundBandProperties.
      Returns:
      Current bandedBackground value. Default value is true
    • setBandedStandardDeviations

      public FacetChart setBandedStandardDeviations(Boolean bandedStandardDeviations) throws IllegalStateException
      Whether to show color bands between the standard deviation lines.

      Standard deviation bands are not available for pie or radar charts.

      Parameters:
      bandedStandardDeviations - New bandedStandardDeviations value. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getBandedStandardDeviations

      public Boolean getBandedStandardDeviations()
      Whether to show color bands between the standard deviation lines.

      Standard deviation bands are not available for pie or radar charts.

      Returns:
      Current bandedStandardDeviations value. Default value is false
      See Also:
      • com.smartgwt.client.widgets.chart.FacetChart#getStandardDeviationBandProperties
    • setBarMargin

      public FacetChart setBarMargin(int barMargin) throws IllegalStateException
      Distance between bars. May be reduced if bars would be smaller than minBarThickness.
      Parameters:
      barMargin - New barMargin value. Default value is 4
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getBarMargin

      public int getBarMargin()
      Distance between bars. May be reduced if bars would be smaller than minBarThickness.
      Returns:
      Current barMargin value. Default value is 4
    • setBarProperties

      public FacetChart setBarProperties(DrawRect barProperties)
      Properties for bar
      Parameters:
      barProperties - New barProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getBarProperties

      public DrawRect getBarProperties()
      Properties for bar
      Returns:
      Current barProperties value. Default value is null
    • setBrightenAllOnHover

      public FacetChart setBrightenAllOnHover(Boolean brightenAllOnHover)
      When highlightDataValues is true, should the whole draw-area of the data-value be brightened by a percentage, or just its border?

      By default, only the border around the draw-area is brightened.

      Only affects Bar, Column, Pie and Doughnut chart-types.

      Parameters:
      brightenAllOnHover - New brightenAllOnHover value. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
    • getBrightenAllOnHover

      public Boolean getBrightenAllOnHover()
      When highlightDataValues is true, should the whole draw-area of the data-value be brightened by a percentage, or just its border?

      By default, only the border around the draw-area is brightened.

      Only affects Bar, Column, Pie and Doughnut chart-types.

      Returns:
      Current brightenAllOnHover value. Default value is false
    • setBrightenPercent

      public FacetChart setBrightenPercent(int brightenPercent)
      When highlightDataValues is true, sets the percentage by which to brighten filled data-shapes in some chart-types as the mouse is moved over the chart. Affects Bar, Column, Pie and Doughnut charts, and will brighten either the shape's fill-color or its border-color, depending on the value of brightenAllOnHover.

      Valid values are between 0 and 100, inclusive.

      The property default may vary based on the currently loaded skin.

      Parameters:
      brightenPercent - New brightenPercent value. Default value is 30
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getBrightenPercent

      public int getBrightenPercent()
      When highlightDataValues is true, sets the percentage by which to brighten filled data-shapes in some chart-types as the mouse is moved over the chart. Affects Bar, Column, Pie and Doughnut charts, and will brighten either the shape's fill-color or its border-color, depending on the value of brightenAllOnHover.

      Valid values are between 0 and 100, inclusive.

      The property default may vary based on the currently loaded skin.

      Returns:
      Current brightenPercent value. Default value is 30
      See Also:
    • setBubbleHoverMaxDistance

      public FacetChart setBubbleHoverMaxDistance(int bubbleHoverMaxDistance) throws IllegalStateException
      Maximum distance from the *outer radius* of the nearest bubble when hover will be shown.
      Parameters:
      bubbleHoverMaxDistance - New bubbleHoverMaxDistance value. Default value is 50
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getBubbleHoverMaxDistance

      public int getBubbleHoverMaxDistance()
      Maximum distance from the *outer radius* of the nearest bubble when hover will be shown.
      Returns:
      Current bubbleHoverMaxDistance value. Default value is 50
      See Also:
    • setBubbleProperties

      public FacetChart setBubbleProperties(DrawItem bubbleProperties) throws IllegalStateException
      Properties for the shapes displayed around the data points (for example, in a bubble chart).

      When either the pointSizeMetric or the colorScaleMetric is active the default bubbleProperties displays each data points with a linear gradient.

      Parameters:
      bubbleProperties - New bubbleProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getBubbleProperties

      public DrawItem getBubbleProperties()
      Properties for the shapes displayed around the data points (for example, in a bubble chart).

      When either the pointSizeMetric or the colorScaleMetric is active the default bubbleProperties displays each data points with a linear gradient.

      Returns:
      Current bubbleProperties value. Default value is null
      See Also:
    • setCanMoveAxes

      public FacetChart setCanMoveAxes(Boolean canMoveAxes) throws IllegalStateException
      Whether the positions of value axes can be changed. The default is true for charts with three or more vertical, value axes.
      Parameters:
      canMoveAxes - New canMoveAxes value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getCanMoveAxes

      public Boolean getCanMoveAxes()
      Whether the positions of value axes can be changed. The default is true for charts with three or more vertical, value axes.
      Returns:
      Current canMoveAxes value. Default value is null
      See Also:
    • setCanZoom

      public FacetChart setCanZoom(Boolean canZoom) throws IllegalStateException
      Enables "zooming" on the X axis, specifically, only a portion of the overall dataset is shown in the main chart, and a second smaller chart appears with slider controls allowing a range to be selected for display in the main chart.

      A labelCollapseMode is automatically enabled if unset and is based on the type of the first non-null data value.

      Parameters:
      canZoom - New canZoom value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getCanZoom

      public Boolean getCanZoom()
      Enables "zooming" on the X axis, specifically, only a portion of the overall dataset is shown in the main chart, and a second smaller chart appears with slider controls allowing a range to be selected for display in the main chart.

      A labelCollapseMode is automatically enabled if unset and is based on the type of the first non-null data value.

      Returns:
      Current canZoom value. Default value is null
    • setCenterLegend

      public FacetChart setCenterLegend(Boolean centerLegend) throws IllegalStateException
      Deprecated.
      Alignment of legend and title elements is now always relative to the visible chart-width, and not the full scrollable-width, so that both elements are always on-screen for any alignment
      Whether to place the chart legend with respect to the full, scrollable width of the chart when autoScrollData is active. The default of false means that the legend will be placed in the visible, non-overflowed region of the chart, for greater visibility.

      Note that alignment of the legend itself is governed by legendAlign.

      Note that this setting has no impact on axis labeling, which always occurs with respect to the full, expanded width of the chart.

      Parameters:
      centerLegend - New centerLegend value. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getCenterLegend

      public Boolean getCenterLegend()
      Deprecated.
      Alignment of legend and title elements is now always relative to the visible chart-width, and not the full scrollable-width, so that both elements are always on-screen for any alignment
      Whether to place the chart legend with respect to the full, scrollable width of the chart when autoScrollData is active. The default of false means that the legend will be placed in the visible, non-overflowed region of the chart, for greater visibility.

      Note that alignment of the legend itself is governed by legendAlign.

      Note that this setting has no impact on axis labeling, which always occurs with respect to the full, expanded width of the chart.

      Returns:
      Current centerLegend value. Default value is false
      See Also:
    • setCenterTitle

      public FacetChart setCenterTitle(Boolean centerTitle) throws IllegalStateException
      Deprecated.
      Alignment of title and legend elements is now always relative to the visible chart-width, and not the full scrollable-width, so that both elements are always on-screen for any alignment
      Whether to place the chart title with respect to the full, scrollable width of the chart when autoScrollData is active. The default of false means that the title will be placed in the visible, non-overflowed region of the chart, for greater visibility.

      Note that alignment of the title itself is governed by titleAlign.

      Parameters:
      centerTitle - New centerTitle value. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getCenterTitle

      public Boolean getCenterTitle()
      Deprecated.
      Alignment of title and legend elements is now always relative to the visible chart-width, and not the full scrollable-width, so that both elements are always on-screen for any alignment
      Whether to place the chart title with respect to the full, scrollable width of the chart when autoScrollData is active. The default of false means that the title will be placed in the visible, non-overflowed region of the chart, for greater visibility.

      Note that alignment of the title itself is governed by titleAlign.

      Returns:
      Current centerTitle value. Default value is false
      See Also:
    • setChartRectMargin

      public FacetChart setChartRectMargin(int chartRectMargin) throws IllegalStateException
      Margin around the main chart rect: between title and chart, between chart and axis labels, and chart rect and right edge of chart.
      Parameters:
      chartRectMargin - New chartRectMargin value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getChartRectMargin

      public int getChartRectMargin()
      Margin around the main chart rect: between title and chart, between chart and axis labels, and chart rect and right edge of chart.
      Returns:
      Current chartRectMargin value. Default value is 5
    • setChartRectProperties

      public FacetChart setChartRectProperties(DrawRect chartRectProperties)
      Properties for chart rect. By default, rounding of the chart rect. causes the gradation lines to be automatically inset from the edge so that they do not run right along the curve. Set padChartRectByCornerRadius to false to change this default.
      Parameters:
      chartRectProperties - New chartRectProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getChartRectProperties

      public DrawRect getChartRectProperties()
      Properties for chart rect. By default, rounding of the chart rect. causes the gradation lines to be automatically inset from the edge so that they do not run right along the curve. Set padChartRectByCornerRadius to false to change this default.
      Returns:
      Current chartRectProperties value. Default value is null
    • setChartType

      public FacetChart setChartType(ChartType chartType)
      See ChartType for a list of known types - Column, Bar, Line, Pie, Doughnut, Area, Radar, and Histogram charts are supported.

      If this method is called after the component has been drawn/initialized: Method to change the current chartType. Will redraw the chart if drawn. Will use default settings for the new chart type for stacked and filled if those values are null.

      Note that for multi-axis charts this method changes the chartType for the main value axis only.

      Parameters:
      chartType - new chart type. Default value is "Column"
      Returns:
      FacetChart instance, for chaining setter calls
    • getChartType

      public ChartType getChartType()
      See ChartType for a list of known types - Column, Bar, Line, Pie, Doughnut, Area, Radar, and Histogram charts are supported.
      Returns:
      Current chartType value. Default value is "Column"
    • setClusterMarginRatio

      public FacetChart setClusterMarginRatio(float clusterMarginRatio) throws IllegalStateException
      For clustered charts, ratio between margins between individual bars and margins between clusters.
      Parameters:
      clusterMarginRatio - New clusterMarginRatio value. Default value is 4
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getClusterMarginRatio

      public float getClusterMarginRatio()
      For clustered charts, ratio between margins between individual bars and margins between clusters.
      Returns:
      Current clusterMarginRatio value. Default value is 4
      See Also:
    • setColorMutePercent

      public FacetChart setColorMutePercent(Float colorMutePercent) throws IllegalStateException
      Should be set to a number between -100 and 100. If set, all colors in the chart are "muted" by this percentage by shifting them toward white (or for negative numbers, toward black).
      Parameters:
      colorMutePercent - New colorMutePercent value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getColorMutePercent

      public Float getColorMutePercent()
      Should be set to a number between -100 and 100. If set, all colors in the chart are "muted" by this percentage by shifting them toward white (or for negative numbers, toward black).
      Returns:
      Current colorMutePercent value. Default value is null
    • setColorScaleMetric

      public FacetChart setColorScaleMetric(String colorScaleMetric) throws IllegalStateException
      For charts where showDataPoints is enabled, this property specifies an additional metric (i.e. an "id" of a metric facet value) that causes the data points to be colored from scaleStartColor to scaleEndColor based on a linear scale over the values of this metric. Log-scaling for color scale is also supported with logScalePointColor.
      Parameters:
      colorScaleMetric - New colorScaleMetric value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getColorScaleMetric

      public String getColorScaleMetric()
      For charts where showDataPoints is enabled, this property specifies an additional metric (i.e. an "id" of a metric facet value) that causes the data points to be colored from scaleStartColor to scaleEndColor based on a linear scale over the values of this metric. Log-scaling for color scale is also supported with logScalePointColor.
      Returns:
      Current colorScaleMetric value. Default value is null
      See Also:
    • setDataAxisLabelDelimiter

      public FacetChart setDataAxisLabelDelimiter(String dataAxisLabelDelimiter)
      Determines how inner and outer data axis labels are separated for charts that support multiple data label facets. See the discussion of "Three Facet Bar and Column Charts" in the overview.
      Parameters:
      dataAxisLabelDelimiter - New dataAxisLabelDelimiter value. Default value is " / "
      Returns:
      FacetChart instance, for chaining setter calls
    • getDataAxisLabelDelimiter

      public String getDataAxisLabelDelimiter()
      Determines how inner and outer data axis labels are separated for charts that support multiple data label facets. See the discussion of "Three Facet Bar and Column Charts" in the overview.
      Returns:
      Current dataAxisLabelDelimiter value. Default value is " / "
    • setDataAxisLabelProperties

      public FacetChart setDataAxisLabelProperties(DrawLabel dataAxisLabelProperties)
      Properties for labels of data axis.
      Parameters:
      dataAxisLabelProperties - New dataAxisLabelProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getDataAxisLabelProperties

      public DrawLabel getDataAxisLabelProperties()
      Properties for labels of data axis.
      Returns:
      Current dataAxisLabelProperties value. Default value is null
    • setDataColors

      public FacetChart setDataColors(String... dataColors)
      An array of colors to use for a series of visual elements representing data (eg columns, bars, pie slices), any of which may be adjacent to any other.

      Colors must be in the format of a leading hash (#) plus 6 hexadecimal digits, for example, "#FFFFFF" is white, "#FF0000" is pure red.

      If this method is called after the component has been drawn/initialized: Setter for dataColors.

      Parameters:
      dataColors - New set of data colors. Default value is see below
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getDataColors

      public String[] getDataColors()
      An array of colors to use for a series of visual elements representing data (eg columns, bars, pie slices), any of which may be adjacent to any other.

      Colors must be in the format of a leading hash (#) plus 6 hexadecimal digits, for example, "#FFFFFF" is white, "#FF0000" is pure red.

      Returns:
      Current dataColors value. Default value is see below
      See Also:
    • setDataFetchMode

      public FacetChart setDataFetchMode(FetchMode dataFetchMode)
      FacetCharts do not yet support paging, and will fetch all records that meet the criteria.
      Specified by:
      setDataFetchMode in interface DataBoundComponent
      Parameters:
      dataFetchMode - New dataFetchMode value. Default value is "basic"
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getDataFetchMode

      public FetchMode getDataFetchMode()
      FacetCharts do not yet support paging, and will fetch all records that meet the criteria.
      Specified by:
      getDataFetchMode in interface DataBoundComponent
      Returns:
      Current dataFetchMode value. Default value is "basic"
      See Also:
    • setDataLabelFacetsMargin

      public FacetChart setDataLabelFacetsMargin(String dataLabelFacetsMargin)
      Determines separation between the set of inner data labels and the set of outer data labels for charts that support multiple data label facets. See the discussion of "Three Facet Bar and Column Charts" in the overview.
      Parameters:
      dataLabelFacetsMargin - New dataLabelFacetsMargin value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
    • getDataLabelFacetsMargin

      public String getDataLabelFacetsMargin()
      Determines separation between the set of inner data labels and the set of outer data labels for charts that support multiple data label facets. See the discussion of "Three Facet Bar and Column Charts" in the overview.
      Returns:
      Current dataLabelFacetsMargin value. Default value is 5
    • setDataLabelProperties

      public FacetChart setDataLabelProperties(DrawLabel dataLabelProperties)
      Properties for data label
      Parameters:
      dataLabelProperties - New dataLabelProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getDataLabelProperties

      public DrawLabel getDataLabelProperties()
      Properties for data label
      Returns:
      Current dataLabelProperties value. Default value is null
    • setDataLabelToValueAxisMargin

      public FacetChart setDataLabelToValueAxisMargin(int dataLabelToValueAxisMargin) throws IllegalStateException
      Margin between the edge of the chart and the data labels of the data label axis. This will default to the chart margin if unset and should not exceed it. Setting this property to some valid non-null value has the impact of moving the data labels towards to chart, away from the axis label.
      Parameters:
      dataLabelToValueAxisMargin - New dataLabelToValueAxisMargin value. Default value is varies
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getDataLabelToValueAxisMargin

      public int getDataLabelToValueAxisMargin()
      Margin between the edge of the chart and the data labels of the data label axis. This will default to the chart margin if unset and should not exceed it. Setting this property to some valid non-null value has the impact of moving the data labels towards to chart, away from the axis label.
      Returns:
      Current dataLabelToValueAxisMargin value. Default value is varies
    • setDataLineProperties

      public FacetChart setDataLineProperties(DrawLine dataLineProperties) throws IllegalStateException
      Properties for lines that show data (as opposed to gradations or borders around the data area).
      Parameters:
      dataLineProperties - New dataLineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getDataLineProperties

      public DrawLine getDataLineProperties()
      Properties for lines that show data (as opposed to gradations or borders around the data area).
      Returns:
      Current dataLineProperties value. Default value is null
    • setDataLineType

      public FacetChart setDataLineType(DataLineType dataLineType)
      How to draw lines between adjacent data points in Line and Scatter charts. See DataLineType.

      Does not apply to boundary lines for shapes in Area or Radar plots.

      If this method is called after the component has been drawn/initialized: Method to change the current dataLineType. Will redraw the chart if drawn.

      Parameters:
      dataLineType - ow to draw lines between adjacent data points in Line and Scatter charts. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getDataLineType

      public DataLineType getDataLineType()
      How to draw lines between adjacent data points in Line and Scatter charts. See DataLineType.

      Does not apply to boundary lines for shapes in Area or Radar plots.

      Returns:
      Current dataLineType value. Default value is null
    • setDataMargin

      public FacetChart setDataMargin(int dataMargin) throws IllegalStateException
      For rectangular charts (bar, column, line), margin around the inside of the main chart area, so that data elements are not flush to edge.
      Parameters:
      dataMargin - New dataMargin value. Default value is 10
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getDataMargin

      public int getDataMargin()
      For rectangular charts (bar, column, line), margin around the inside of the main chart area, so that data elements are not flush to edge.
      Returns:
      Current dataMargin value. Default value is 10
    • setDataOutlineProperties

      public FacetChart setDataOutlineProperties(DrawItem dataOutlineProperties) throws IllegalStateException
      Properties for lines that outline a data shape (in filled charts such as area or radar charts).
      Parameters:
      dataOutlineProperties - New dataOutlineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getDataOutlineProperties

      public DrawItem getDataOutlineProperties()
      Properties for lines that outline a data shape (in filled charts such as area or radar charts).
      Returns:
      Current dataOutlineProperties value. Default value is null
    • setDataPointProperties

      public FacetChart setDataPointProperties(DrawItem dataPointProperties) throws IllegalStateException
      Common properties to apply for all data points (see showDataPoints).
      Parameters:
      dataPointProperties - New dataPointProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getDataPointProperties

      public DrawItem getDataPointProperties()
      Common properties to apply for all data points (see showDataPoints).
      Returns:
      Current dataPointProperties value. Default value is null
    • setDataPointSize

      public FacetChart setDataPointSize(int dataPointSize) throws IllegalStateException
      Size in pixels for data points drawn for line, area, radar and other chart types.
      Parameters:
      dataPointSize - New dataPointSize value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getDataPointSize

      public int getDataPointSize()
      Size in pixels for data points drawn for line, area, radar and other chart types.
      Returns:
      Current dataPointSize value. Default value is 5
    • setDataShapeProperties

      public FacetChart setDataShapeProperties(DrawPath dataShapeProperties) throws IllegalStateException
      Properties for data shapes (filled areas in area or radar charts).
      Parameters:
      dataShapeProperties - New dataShapeProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getDataShapeProperties

      public DrawPath getDataShapeProperties()
      Properties for data shapes (filled areas in area or radar charts).
      Returns:
      Current dataShapeProperties value. Default value is null
    • setDataSource

      public FacetChart setDataSource(DataSource dataSource)
      The DataSource that this component should bind to for default fields and for performing DataSource requests.

      Can be specified as either a DataSource instance or the String ID of a DataSource.

      Specified by:
      setDataSource in interface DataBoundComponent
      Parameters:
      dataSource - New dataSource value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • setDataSource

      public FacetChart setDataSource(String dataSource)
      The DataSource that this component should bind to for default fields and for performing DataSource requests.

      Can be specified as either a DataSource instance or the String ID of a DataSource.

      Specified by:
      setDataSource in interface DataBoundComponent
      Parameters:
      dataSource - New dataSource value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • setDataValueHoverShadow

      public FacetChart setDataValueHoverShadow(Shadow dataValueHoverShadow)
      When highlightDataValues is true, this attribute can be set to a DrawItem shadow to show around the draw-area of nearby filled data-value shapes as the mouse is moved around in Bar, Column, Pie and Doughnut chart-types.
      Parameters:
      dataValueHoverShadow - New dataValueHoverShadow value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getDataValueHoverShadow

      public Shadow getDataValueHoverShadow()
      When highlightDataValues is true, this attribute can be set to a DrawItem shadow to show around the draw-area of nearby filled data-value shapes as the mouse is moved around in Bar, Column, Pie and Doughnut chart-types.
      Returns:
      Current dataValueHoverShadow value. Default value is null
    • setDecimalPrecision

      public FacetChart setDecimalPrecision(int decimalPrecision) throws IllegalStateException
      Default precision used when formatting float numbers for axis labels
      Parameters:
      decimalPrecision - New decimalPrecision value. Default value is 2
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getDecimalPrecision

      public int getDecimalPrecision()
      Default precision used when formatting float numbers for axis labels
      Returns:
      Current decimalPrecision value. Default value is 2
    • setDiscontinuousLines

      public FacetChart setDiscontinuousLines(Boolean discontinuousLines)
      Whether to treat non-numeric values in the dataset as indicating a break in the data line. If set to false then null values are ignored. Defaults to true for filled charts and to false for line charts.
      Parameters:
      discontinuousLines - New discontinuousLines value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getDiscontinuousLines

      public Boolean getDiscontinuousLines()
      Whether to treat non-numeric values in the dataset as indicating a break in the data line. If set to false then null values are ignored. Defaults to true for filled charts and to false for line charts.
      Returns:
      Current discontinuousLines value. Default value is null
    • setDoughnutHoleProperties

      public FacetChart setDoughnutHoleProperties(DrawOval doughnutHoleProperties)
      Properties for doughnut hole
      Parameters:
      doughnutHoleProperties - New doughnutHoleProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getDoughnutHoleProperties

      public DrawOval getDoughnutHoleProperties()
      Properties for doughnut hole
      Returns:
      Current doughnutHoleProperties value. Default value is null
    • setDoughnutRatio

      public FacetChart setDoughnutRatio(float doughnutRatio) throws IllegalStateException
      If showing a doughnut hole (see showDoughnut), ratio of the size of the doughnut hole to the size of the overall pie chart, as a number between 0 to 1.
      Parameters:
      doughnutRatio - New doughnutRatio value. Default value is 0.2
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getDoughnutRatio

      public float getDoughnutRatio()
      If showing a doughnut hole (see showDoughnut), ratio of the size of the doughnut hole to the size of the overall pie chart, as a number between 0 to 1.
      Returns:
      Current doughnutRatio value. Default value is 0.2
    • setDrawLegendBoundary

      public FacetChart setDrawLegendBoundary(Boolean drawLegendBoundary) throws IllegalStateException
      Whether a boundary should be drawn above the Legend area for circumstances where the chart area already has an outer border. If the chart has no outer border, then the legendRectProperties settings should be used instead.
      Parameters:
      drawLegendBoundary - New drawLegendBoundary value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getDrawLegendBoundary

      public Boolean getDrawLegendBoundary()
      Whether a boundary should be drawn above the Legend area for circumstances where the chart area already has an outer border. If the chart has no outer border, then the legendRectProperties settings should be used instead.
      Returns:
      Current drawLegendBoundary value. Default value is null
    • setDrawTitleBackground

      public FacetChart setDrawTitleBackground(Boolean drawTitleBackground)
      should a background color be set behind the Title. Use titleBackgroundProperties to set these values if this is true.
      Parameters:
      drawTitleBackground - New drawTitleBackground value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getDrawTitleBackground

      public Boolean getDrawTitleBackground()
      should a background color be set behind the Title. Use titleBackgroundProperties to set these values if this is true.
      Returns:
      Current drawTitleBackground value. Default value is null
    • setDrawTitleBoundary

      public FacetChart setDrawTitleBoundary(Boolean drawTitleBoundary)
      Whether a boundary should be drawn below the title area for circumstances where the chart area already has an outer border. If the chart has no outer border, then the titleBackgroundProperties settings should be used instead.
      Parameters:
      drawTitleBoundary - New drawTitleBoundary value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getDrawTitleBoundary

      public Boolean getDrawTitleBoundary()
      Whether a boundary should be drawn below the title area for circumstances where the chart area already has an outer border. If the chart has no outer border, then the titleBackgroundProperties settings should be used instead.
      Returns:
      Current drawTitleBoundary value. Default value is null
    • setEditProxyConstructor

      public FacetChart setEditProxyConstructor(String editProxyConstructor) throws IllegalStateException
      Default class used to construct the EditProxy for this component when the component is first placed into edit mode.
      Overrides:
      setEditProxyConstructor in class DrawPane
      Parameters:
      editProxyConstructor - New editProxyConstructor value. Default value is "FacetChartEditProxy"
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getEditProxyConstructor

      public String getEditProxyConstructor()
      Default class used to construct the EditProxy for this component when the component is first placed into edit mode.
      Overrides:
      getEditProxyConstructor in class DrawPane
      Returns:
      Current editProxyConstructor value. Default value is "FacetChartEditProxy"
      See Also:
    • setEndValueMetric

      public FacetChart setEndValueMetric(String endValueMetric) throws IllegalStateException
      Specifies the attribute in the metric facet that will define the end point of segments in a histogram chart. The start point is set via the valueProperty.
      Parameters:
      endValueMetric - New endValueMetric value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getEndValueMetric

      public String getEndValueMetric()
      Specifies the attribute in the metric facet that will define the end point of segments in a histogram chart. The start point is set via the valueProperty.
      Returns:
      Current endValueMetric value. Default value is null
      See Also:
    • setErrorBarColorMutePercent

      public FacetChart setErrorBarColorMutePercent(float errorBarColorMutePercent) throws IllegalStateException
      This property helps specify the color of the error bars and its value must be a number between -100 and 100. Error bars have the same color as the data line, but the colors are actually "muted" by this percentage by shifting them toward white (or for negative numbers, toward black). The default is to darken the data colors by 60% to get the error bar colors.
      Parameters:
      errorBarColorMutePercent - New errorBarColorMutePercent value. Default value is -60
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getErrorBarColorMutePercent

      public float getErrorBarColorMutePercent()
      This property helps specify the color of the error bars and its value must be a number between -100 and 100. Error bars have the same color as the data line, but the colors are actually "muted" by this percentage by shifting them toward white (or for negative numbers, toward black). The default is to darken the data colors by 60% to get the error bar colors.
      Returns:
      Current errorBarColorMutePercent value. Default value is -60
    • setErrorBarWidth

      public FacetChart setErrorBarWidth(int errorBarWidth) throws IllegalStateException
      Width of the horizontal line of the "T"-shape portion of the error bar).
      Parameters:
      errorBarWidth - New errorBarWidth value. Default value is 6
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getErrorBarWidth

      public int getErrorBarWidth()
      Width of the horizontal line of the "T"-shape portion of the error bar).
      Returns:
      Current errorBarWidth value. Default value is 6
    • setErrorLineProperties

      public FacetChart setErrorLineProperties(DrawLine errorLineProperties) throws IllegalStateException
      Properties of the lines used to draw error bars (short, horizontal lines at the low and high metric values, and a vertical connecting line).

      Note that the lineColor property has no effect as the color of the error bars is derived from the color of the data line.

      Parameters:
      errorLineProperties - New errorLineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getErrorLineProperties

      public DrawLine getErrorLineProperties()
      Properties of the lines used to draw error bars (short, horizontal lines at the low and high metric values, and a vertical connecting line).

      Note that the lineColor property has no effect as the color of the error bars is derived from the color of the data line.

      Returns:
      Current errorLineProperties value. Default value is null
      See Also:
    • setExpectedValueLineProperties

      public FacetChart setExpectedValueLineProperties(DrawItem expectedValueLineProperties) throws IllegalStateException
      Properties for the line drawn at the mean value.

      Note that for rectangular charts the properties are for a DrawLine, and for radar charts the properties are for a DrawOval.

      Parameters:
      expectedValueLineProperties - New expectedValueLineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getExpectedValueLineProperties

      public DrawItem getExpectedValueLineProperties()
      Properties for the line drawn at the mean value.

      Note that for rectangular charts the properties are for a DrawLine, and for radar charts the properties are for a DrawOval.

      Returns:
      Current expectedValueLineProperties value. Default value is null
    • setExtraAxisLabelAlign

      public FacetChart setExtraAxisLabelAlign(Alignment extraAxisLabelAlign)
      Horizontal alignment of labels shown in extra y-axes, shown to the right of the chart.
      Parameters:
      extraAxisLabelAlign - New extraAxisLabelAlign value. Default value is "left"
      Returns:
      FacetChart instance, for chaining setter calls
    • getExtraAxisLabelAlign

      public Alignment getExtraAxisLabelAlign()
      Horizontal alignment of labels shown in extra y-axes, shown to the right of the chart.
      Returns:
      Current extraAxisLabelAlign value. Default value is "left"
    • setExtraAxisMetrics

      public FacetChart setExtraAxisMetrics(String... extraAxisMetrics) throws IllegalStateException
      Defines the set of metrics that will be plotted as additional vertical axes. See the main FacetChart docs for an overview of how multi-axis charts are used.

      Each metric corresponds to different value property of the data records and superimposes its drawn data onto the chart rectangle. The value properties are called metrics, and they can be either the valueProperty or the "id" of a FacetValue of the inlined Facet (which is then called the metric facet). Each value axis has its own gradations that are shown as tick marks along the length of the axis. This property, extraAxisMetrics, specifies the metrics to use for additional value axes to the main value axis.

      The additional value axis may have their own gradations, chart type, log scale, data colors and gradients, and other chart properties. These properties are specified with the extraAxisSettings property.

      Value axes, including the main value axis, are labelled in the legend along with representations of the charted data. The labels are taken from the FacetValue.title of each metric's FacetValue (or the valueTitle if the metric is the valueProperty).

      The order of the metrics determines the position of the corresponding axes on the chart as well as the z-ordering of the corresponding data lines. The first and second extra value axes are placed to the right of the chart rectangle, and any remaining extra value axes are placed to the left of the main value axis (and therefore to the left of the chart rectangle).

      Parameters:
      extraAxisMetrics - New extraAxisMetrics value. Default value is []
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getExtraAxisMetrics

      public String[] getExtraAxisMetrics()
      Defines the set of metrics that will be plotted as additional vertical axes. See the main FacetChart docs for an overview of how multi-axis charts are used.

      Each metric corresponds to different value property of the data records and superimposes its drawn data onto the chart rectangle. The value properties are called metrics, and they can be either the valueProperty or the "id" of a FacetValue of the inlined Facet (which is then called the metric facet). Each value axis has its own gradations that are shown as tick marks along the length of the axis. This property, extraAxisMetrics, specifies the metrics to use for additional value axes to the main value axis.

      The additional value axis may have their own gradations, chart type, log scale, data colors and gradients, and other chart properties. These properties are specified with the extraAxisSettings property.

      Value axes, including the main value axis, are labelled in the legend along with representations of the charted data. The labels are taken from the FacetValue.title of each metric's FacetValue (or the valueTitle if the metric is the valueProperty).

      The order of the metrics determines the position of the corresponding axes on the chart as well as the z-ordering of the corresponding data lines. The first and second extra value axes are placed to the right of the chart rectangle, and any remaining extra value axes are placed to the left of the main value axis (and therefore to the left of the chart rectangle).

      Returns:
      Current extraAxisMetrics value. Default value is []
      See Also:
    • setExtraAxisSettings

      public FacetChart setExtraAxisSettings(MetricSettings... extraAxisSettings) throws IllegalStateException
      For charts will multiple vertical axes, optionally provides settings for how each extra axis metric is plotted. See the main FacetChart docs for an overview of how multi-axis charts are used.

      The chart of each metric's values may be of any rectangular chart type that uses a vertical value axis ("Column", "Area", or "Line" - "Histogram" is not supported). Because the charts will be superimposed over the same drawing area, there can only be one "Column" chart and one "Area" chart. The column chart is placed on the bottom followed by the area chart, and then the line charts are drawn on top in the order of their metric in the extraAxisMetrics array. If the chartTypes are left unspecified then by default the first metric will be drawn as columns and the remaining will be drawn as lines.

      Parameters:
      extraAxisSettings - New extraAxisSettings value. Default value is []
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getExtraAxisSettings

      public MetricSettings[] getExtraAxisSettings()
      For charts will multiple vertical axes, optionally provides settings for how each extra axis metric is plotted. See the main FacetChart docs for an overview of how multi-axis charts are used.

      The chart of each metric's values may be of any rectangular chart type that uses a vertical value axis ("Column", "Area", or "Line" - "Histogram" is not supported). Because the charts will be superimposed over the same drawing area, there can only be one "Column" chart and one "Area" chart. The column chart is placed on the bottom followed by the area chart, and then the line charts are drawn on top in the order of their metric in the extraAxisMetrics array. If the chartTypes are left unspecified then by default the first metric will be drawn as columns and the remaining will be drawn as lines.

      Returns:
      Current extraAxisSettings value. Default value is []
      See Also:
    • setFacetFields

      public FacetChart setFacetFields(String... facetFields) throws IllegalStateException
      Specifies what DataSource fields to use as the chart facets for a databound chart. If facets is also explicitly set, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      If neither this property nor facets is set, a databound chart will attempt to auto-derive facetFields from the DataSource fields. The first two text or text-derived fields in the DataSource will be assumed to be the facetFields.

      Parameters:
      facetFields - New facetFields value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getFacetFields

      public String[] getFacetFields()
      Specifies what DataSource fields to use as the chart facets for a databound chart. If facets is also explicitly set, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      If neither this property nor facets is set, a databound chart will attempt to auto-derive facetFields from the DataSource fields. The first two text or text-derived fields in the DataSource will be assumed to be the facetFields.

      Returns:
      Current facetFields value. Default value is null
      See Also:
    • setFacetFields

      public FacetChart setFacetFields(String facetFields) throws IllegalStateException
      Specifies what DataSource fields to use as the chart facets for a databound chart. If facets is also explicitly set, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      If neither this property nor facets is set, a databound chart will attempt to auto-derive facetFields from the DataSource fields. The first two text or text-derived fields in the DataSource will be assumed to be the facetFields.

      Parameters:
      facetFields - New facetFields value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getFacetFieldsAsString

      public String getFacetFieldsAsString()
      Specifies what DataSource fields to use as the chart facets for a databound chart. If facets is also explicitly set, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      If neither this property nor facets is set, a databound chart will attempt to auto-derive facetFields from the DataSource fields. The first two text or text-derived fields in the DataSource will be assumed to be the facetFields.

      Returns:
      Current facetFields value. Default value is null
      See Also:
    • setFacets

      public FacetChart setFacets(Facet... facets) throws IllegalStateException
      An Array of facets, exactly analogous to CubeGrid.facets, except that:
      • the "inlinedValues" property can be set on a facet to change data representation as described under Chart.data.
      • for a non-inlined facet, Charts support auto-derivation of facetValues from the data.

      In all chart types except "Bubble" and "Scatter", the chart displays a value for each discrete value of one facet (i.e. single-facet charts) or it displays a value for each combination of discrete values of two facets (multi-facet charts). The two discrete facets are the data label facet and the legend facet. They are named based on where the values of the facet appear in the chart. The facet whose values are rendered as labels along the data axis or in the main chart area is the data label facet, and the facet whose values are rendered in the legend is the legend facet.

      For single-facet charts, most chart types have a data label facet as the first facet but no legend facet. Single-facet Pie charts have a legend facet as the first facet but no data label facet. Bubble and Scatter plots may have a legend facet as the second facet, after the metric facet.

      In all multi-facet charts, the data label facet is always first and the legend facet is second. In most chart types the data label facet and the legend facet may be swapped on the fly by the user clicking on the "Swap Facets" item of the context menu.

      In the case of Bar and Column Charts, up to three facets are supported, where the first two facets in that case are taken as the data label facets, and the third facet as the legend facet. This works by positioning both data label facets on the same axis, in a way that clearly shows which inner facet values are associated with each outer facet value.

      For databound charts, facetFields may be specified instead of this property. If both are provided, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      Parameters:
      facets - New facets value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getFacets

      public Facet[] getFacets()
      An Array of facets, exactly analogous to CubeGrid.facets, except that:
      • the "inlinedValues" property can be set on a facet to change data representation as described under Chart.data.
      • for a non-inlined facet, Charts support auto-derivation of facetValues from the data.

      In all chart types except "Bubble" and "Scatter", the chart displays a value for each discrete value of one facet (i.e. single-facet charts) or it displays a value for each combination of discrete values of two facets (multi-facet charts). The two discrete facets are the data label facet and the legend facet. They are named based on where the values of the facet appear in the chart. The facet whose values are rendered as labels along the data axis or in the main chart area is the data label facet, and the facet whose values are rendered in the legend is the legend facet.

      For single-facet charts, most chart types have a data label facet as the first facet but no legend facet. Single-facet Pie charts have a legend facet as the first facet but no data label facet. Bubble and Scatter plots may have a legend facet as the second facet, after the metric facet.

      In all multi-facet charts, the data label facet is always first and the legend facet is second. In most chart types the data label facet and the legend facet may be swapped on the fly by the user clicking on the "Swap Facets" item of the context menu.

      In the case of Bar and Column Charts, up to three facets are supported, where the first two facets in that case are taken as the data label facets, and the third facet as the legend facet. This works by positioning both data label facets on the same axis, in a way that clearly shows which inner facet values are associated with each outer facet value.

      For databound charts, facetFields may be specified instead of this property. If both are provided, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      Returns:
      Current facets value. Default value is null
    • setFacets

      public FacetChart setFacets(Facet facets) throws IllegalStateException
      An Array of facets, exactly analogous to CubeGrid.facets, except that:
      • the "inlinedValues" property can be set on a facet to change data representation as described under Chart.data.
      • for a non-inlined facet, Charts support auto-derivation of facetValues from the data.

      In all chart types except "Bubble" and "Scatter", the chart displays a value for each discrete value of one facet (i.e. single-facet charts) or it displays a value for each combination of discrete values of two facets (multi-facet charts). The two discrete facets are the data label facet and the legend facet. They are named based on where the values of the facet appear in the chart. The facet whose values are rendered as labels along the data axis or in the main chart area is the data label facet, and the facet whose values are rendered in the legend is the legend facet.

      For single-facet charts, most chart types have a data label facet as the first facet but no legend facet. Single-facet Pie charts have a legend facet as the first facet but no data label facet. Bubble and Scatter plots may have a legend facet as the second facet, after the metric facet.

      In all multi-facet charts, the data label facet is always first and the legend facet is second. In most chart types the data label facet and the legend facet may be swapped on the fly by the user clicking on the "Swap Facets" item of the context menu.

      In the case of Bar and Column Charts, up to three facets are supported, where the first two facets in that case are taken as the data label facets, and the third facet as the legend facet. This works by positioning both data label facets on the same axis, in a way that clearly shows which inner facet values are associated with each outer facet value.

      For databound charts, facetFields may be specified instead of this property. If both are provided, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      Parameters:
      facets - New facets value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getFacetsAsFacet

      public Facet getFacetsAsFacet()
      An Array of facets, exactly analogous to CubeGrid.facets, except that:
      • the "inlinedValues" property can be set on a facet to change data representation as described under Chart.data.
      • for a non-inlined facet, Charts support auto-derivation of facetValues from the data.

      In all chart types except "Bubble" and "Scatter", the chart displays a value for each discrete value of one facet (i.e. single-facet charts) or it displays a value for each combination of discrete values of two facets (multi-facet charts). The two discrete facets are the data label facet and the legend facet. They are named based on where the values of the facet appear in the chart. The facet whose values are rendered as labels along the data axis or in the main chart area is the data label facet, and the facet whose values are rendered in the legend is the legend facet.

      For single-facet charts, most chart types have a data label facet as the first facet but no legend facet. Single-facet Pie charts have a legend facet as the first facet but no data label facet. Bubble and Scatter plots may have a legend facet as the second facet, after the metric facet.

      In all multi-facet charts, the data label facet is always first and the legend facet is second. In most chart types the data label facet and the legend facet may be swapped on the fly by the user clicking on the "Swap Facets" item of the context menu.

      In the case of Bar and Column Charts, up to three facets are supported, where the first two facets in that case are taken as the data label facets, and the third facet as the legend facet. This works by positioning both data label facets on the same axis, in a way that clearly shows which inner facet values are associated with each outer facet value.

      For databound charts, facetFields may be specified instead of this property. If both are provided, facetFields is definitive but Facet properties will be picked up from facets also present in the facetFields.

      Returns:
      Current facets value. Default value is null
    • setFetchRequestProperties

      public FacetChart setFetchRequestProperties(DSRequest fetchRequestProperties) throws IllegalStateException
      If autoFetchData is true, this attribute allows the developer to declaratively specify DSRequest properties for the initial fetchData() call.

      Note that any properties governing more specific request attributes for the initial fetch (such as autoFetchTextMatchStyle) will be applied on top of this properties block.

      Parameters:
      fetchRequestProperties - New fetchRequestProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getFetchRequestProperties

      public DSRequest getFetchRequestProperties()
      If autoFetchData is true, this attribute allows the developer to declaratively specify DSRequest properties for the initial fetchData() call.

      Note that any properties governing more specific request attributes for the initial fetch (such as autoFetchTextMatchStyle) will be applied on top of this properties block.

      Returns:
      Current fetchRequestProperties value. Default value is null
      See Also:
    • setFilled

      public FacetChart setFilled(Boolean filled)
      Whether shapes are filled, for example, whether a multi-series line chart appears as a stack of filled regions as opposed to just multiple lines.

      If unset, fills will be automatically used when there are multiple facets and stacking is active (so Line and Radar charts will show stacked regions).

      You can explicitly set filled:false to create multi-facet Line or Radar charts where translucent regions overlap, or filled:true to fill in a single-facet Line or Radar chart.

      If this method is called after the component has been drawn/initialized: Method to change filled. Use null to apply a default value for the current chartType.

      Parameters:
      filled - new value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getFilled

      public Boolean getFilled()
      Whether shapes are filled, for example, whether a multi-series line chart appears as a stack of filled regions as opposed to just multiple lines.

      If unset, fills will be automatically used when there are multiple facets and stacking is active (so Line and Radar charts will show stacked regions).

      You can explicitly set filled:false to create multi-facet Line or Radar charts where translucent regions overlap, or filled:true to fill in a single-facet Line or Radar chart.

      Returns:
      Current filled value. Default value is null
    • setFormatStringFacetValueIds

      public FacetChart setFormatStringFacetValueIds(Boolean formatStringFacetValueIds)
      Whether to call setXAxisValueFormatter() or formatFacetValueId() on a facet value id when the id is a string. Can be set false to allow the formatting function(s) to be written without having to handle the string case.
      Parameters:
      formatStringFacetValueIds - New formatStringFacetValueIds value. Default value is true
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getFormatStringFacetValueIds

      public Boolean getFormatStringFacetValueIds()
      Whether to call setXAxisValueFormatter() or formatFacetValueId() on a facet value id when the id is a string. Can be set false to allow the formatting function(s) to be written without having to handle the string case.
      Returns:
      Current formatStringFacetValueIds value. Default value is true
      See Also:
    • setGradationGaps

      public FacetChart setGradationGaps(float... gradationGaps)
      Candidate gradation gaps to evaluate when trying to determine what gradations should be displayed on the primary axis, which is typically the y (vertical) axis except for Bar charts.

      Candidates are expressed as a series of numbers between 1 and 10, representing boundaries within a given order of magnitude (power of 10).

      For example, the setting [1, 2.5, 5] means that, for a chart showing values that are only between 0 and 1, gradations of 0.1, 0.25 and 0.5 would be evaluated to see which is a closer fit given the pixelsPerGradation setting and the chart's height. The same setting, with a chart showing values from 0 to 1,000,000 would imply that gradation gaps of 100,000, 250,000 and 500,000 would be evaluated.

      If this method is called after the component has been drawn/initialized: Setter for gradationGaps.

      Parameters:
      gradationGaps - new gradationGaps value. Default value is [1, 2, 5]
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getGradationGaps

      public float[] getGradationGaps()
      Candidate gradation gaps to evaluate when trying to determine what gradations should be displayed on the primary axis, which is typically the y (vertical) axis except for Bar charts.

      Candidates are expressed as a series of numbers between 1 and 10, representing boundaries within a given order of magnitude (power of 10).

      For example, the setting [1, 2.5, 5] means that, for a chart showing values that are only between 0 and 1, gradations of 0.1, 0.25 and 0.5 would be evaluated to see which is a closer fit given the pixelsPerGradation setting and the chart's height. The same setting, with a chart showing values from 0 to 1,000,000 would imply that gradation gaps of 100,000, 250,000 and 500,000 would be evaluated.

      Returns:
      Current gradationGaps value. Default value is [1, 2, 5]
      See Also:
    • setGradationLabelPadding

      public FacetChart setGradationLabelPadding(int gradationLabelPadding) throws IllegalStateException
      Padding from edge of Y the Axis Label.
      Parameters:
      gradationLabelPadding - New gradationLabelPadding value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getGradationLabelPadding

      public int getGradationLabelPadding()
      Padding from edge of Y the Axis Label.
      Returns:
      Current gradationLabelPadding value. Default value is 5
    • setGradationLabelProperties

      public FacetChart setGradationLabelProperties(DrawLabel gradationLabelProperties) throws IllegalStateException
      Properties for gradation labels
      Parameters:
      gradationLabelProperties - New gradationLabelProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getGradationLabelProperties

      public DrawLabel getGradationLabelProperties()
      Properties for gradation labels
      Returns:
      Current gradationLabelProperties value. Default value is null
    • setGradationLineProperties

      public FacetChart setGradationLineProperties(DrawLine gradationLineProperties) throws IllegalStateException
      Properties for gradation lines
      Parameters:
      gradationLineProperties - New gradationLineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getGradationLineProperties

      public DrawLine getGradationLineProperties()
      Properties for gradation lines
      Returns:
      Current gradationLineProperties value. Default value is null
    • setGradationTickMarkLength

      public FacetChart setGradationTickMarkLength(Integer gradationTickMarkLength) throws IllegalStateException
      Deprecated.
      use tickLength instead
      Parameters:
      gradationTickMarkLength - New gradationTickMarkLength value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getGradationTickMarkLength

      public Integer getGradationTickMarkLength()
      Deprecated.
      use tickLength instead
      Returns:
      Current gradationTickMarkLength value. Default value is null
      See Also:
    • setGradationZeroLineProperties

      public FacetChart setGradationZeroLineProperties(DrawLine gradationZeroLineProperties) throws IllegalStateException
      Properties for the gradation line drawn for zero (slightly thicker by default).
      Parameters:
      gradationZeroLineProperties - New gradationZeroLineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getGradationZeroLineProperties

      public DrawLine getGradationZeroLineProperties()
      Properties for the gradation line drawn for zero (slightly thicker by default).
      Returns:
      Current gradationZeroLineProperties value. Default value is null
    • setHighErrorMetric

      public FacetChart setHighErrorMetric(String highErrorMetric) throws IllegalStateException
      Parameters:
      highErrorMetric - New highErrorMetric value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getHighErrorMetric

      public String getHighErrorMetric()
      Returns:
      Current highErrorMetric value. Default value is null
    • setHighlightDataValues

      public FacetChart setHighlightDataValues(Boolean highlightDataValues)
      Should the draw-area of nearby filled data-value shapes be highlighted as the mouse is moved over some chart-types?

      When set to true, data-shapes in Bar, Column, Pie and Doughnut charts can be highlighted by brightening their fill or border colors by a percentage, and by applying a shadow around them.

      Parameters:
      highlightDataValues - New highlightDataValues value. Default value is true
      Returns:
      FacetChart instance, for chaining setter calls
    • getHighlightDataValues

      public Boolean getHighlightDataValues()
      Should the draw-area of nearby filled data-value shapes be highlighted as the mouse is moved over some chart-types?

      When set to true, data-shapes in Bar, Column, Pie and Doughnut charts can be highlighted by brightening their fill or border colors by a percentage, and by applying a shadow around them.

      Returns:
      Current highlightDataValues value. Default value is true
    • setHoverLabelPadding

      public FacetChart setHoverLabelPadding(int hoverLabelPadding) throws IllegalStateException
      An extra amount of padding to show around the hoverLabel when showValueOnHover is enabled.

      Note : This is an advanced setting

      Parameters:
      hoverLabelPadding - New hoverLabelPadding value. Default value is 4
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getHoverLabelPadding

      public int getHoverLabelPadding()
      An extra amount of padding to show around the hoverLabel when showValueOnHover is enabled.
      Returns:
      Current hoverLabelPadding value. Default value is 4
      See Also:
    • setHoverLabelProperties

      public FacetChart setHoverLabelProperties(DrawLabel hoverLabelProperties) throws IllegalStateException
      Properties for text in a floating label that represents the data value shown whenever the mouse moves withing the main chart area when showValueOnHover is enabled.
      Parameters:
      hoverLabelProperties - New hoverLabelProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getHoverLabelProperties

      public DrawLabel getHoverLabelProperties()
      Properties for text in a floating label that represents the data value shown whenever the mouse moves withing the main chart area when showValueOnHover is enabled.
      Returns:
      Current hoverLabelProperties value. Default value is null
      See Also:
    • setHoverRectProperties

      public FacetChart setHoverRectProperties(DrawRect hoverRectProperties) throws IllegalStateException
      Properties for rectangle that draws behind of a floating hover label that represents the data value. See showValueOnHover for more details.
      Parameters:
      hoverRectProperties - New hoverRectProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getHoverRectProperties

      public DrawRect getHoverRectProperties()
      Properties for rectangle that draws behind of a floating hover label that represents the data value. See showValueOnHover for more details.
      Returns:
      Current hoverRectProperties value. Default value is null
      See Also:
    • setLabelCollapseMode

      public FacetChart setLabelCollapseMode(LabelCollapseMode labelCollapseMode) throws IllegalStateException
      What to do when there are too many data points to be able to show labels for every data point at the current chart size - see LabelCollapseMode.

      Each of the possible strategies is re-applied when the user resizes the chart as a whole, so if labels are omitted the user can make them visible via resize or zoom.

      If the labelCollapseMode is "numeric" then vertical lines will be drawn at gradation values automatically chosen by the chart.

      If the labelCollapseMode is "time" then vertical lines are drawn to represent a sequence of significant datetime values on the x-axis, such as the first day of the month or week. The chart automatically chooses the sequence of Dates such that the spacing between them expresses the smallest granularity of time possible while still allowing the axis labels to make good use of the space. If, for example, the Date values in the data span a few years in time then the chart may select January 1 of the same year of the earliest data point and every January 1 thereafter (in range of the data) as the sequence of Dates and label each Date by the four-digit year. If the time span of the data values is on the order of minutes then the chart may select multiples of 15 minutes as the seqeunce of Dates. FacetChart currently supports the following granularities of time: years, quarters, months, weeks, days, hours, half-hours, quarter-hours, 5 minutes, minutes, 30 seconds, and 15 seconds.

      The format of the Date labels is fixed by FacetChart. In particular, the format method for any setter applied with setXAxisValueFormatter() will not be called on values for the x-axis. However, FacetChart uses the global array of abbreviated month names for the time granularities of quarters, months, and weeks, uses the default short time format to format labels for time granularities from minutes to hours, and uses the default time format to format labels for the time granularities of 15 seconds and 30 seconds. The label format can be customized by changing these three formatters. Also note that for the time granularity of weeks the sequence of Dates will be the first day of each week, as specified by setFirstDayOfWeek() .

      Note that if the labelCollapseMode is "time" or "numeric" then the data must be initially sorted with the data label facet's values in ascending order.

      Parameters:
      labelCollapseMode - New labelCollapseMode value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLabelCollapseMode

      public LabelCollapseMode getLabelCollapseMode()
      What to do when there are too many data points to be able to show labels for every data point at the current chart size - see LabelCollapseMode.

      Each of the possible strategies is re-applied when the user resizes the chart as a whole, so if labels are omitted the user can make them visible via resize or zoom.

      If the labelCollapseMode is "numeric" then vertical lines will be drawn at gradation values automatically chosen by the chart.

      If the labelCollapseMode is "time" then vertical lines are drawn to represent a sequence of significant datetime values on the x-axis, such as the first day of the month or week. The chart automatically chooses the sequence of Dates such that the spacing between them expresses the smallest granularity of time possible while still allowing the axis labels to make good use of the space. If, for example, the Date values in the data span a few years in time then the chart may select January 1 of the same year of the earliest data point and every January 1 thereafter (in range of the data) as the sequence of Dates and label each Date by the four-digit year. If the time span of the data values is on the order of minutes then the chart may select multiples of 15 minutes as the seqeunce of Dates. FacetChart currently supports the following granularities of time: years, quarters, months, weeks, days, hours, half-hours, quarter-hours, 5 minutes, minutes, 30 seconds, and 15 seconds.

      The format of the Date labels is fixed by FacetChart. In particular, the format method for any setter applied with setXAxisValueFormatter() will not be called on values for the x-axis. However, FacetChart uses the global array of abbreviated month names for the time granularities of quarters, months, and weeks, uses the default short time format to format labels for time granularities from minutes to hours, and uses the default time format to format labels for the time granularities of 15 seconds and 30 seconds. The label format can be customized by changing these three formatters. Also note that for the time granularity of weeks the sequence of Dates will be the first day of each week, as specified by setFirstDayOfWeek() .

      Note that if the labelCollapseMode is "time" or "numeric" then the data must be initially sorted with the data label facet's values in ascending order.

      Returns:
      Current labelCollapseMode value. Default value is null
      See Also:
    • setLegendAlign

      public FacetChart setLegendAlign(LegendAlign legendAlign)
      Horizontal alignment of the chart's legend widget.
      Parameters:
      legendAlign - New legendAlign value. Default value is "center"
      Returns:
      FacetChart instance, for chaining setter calls
    • getLegendAlign

      public LegendAlign getLegendAlign()
      Horizontal alignment of the chart's legend widget.
      Returns:
      Current legendAlign value. Default value is "center"
    • setLegendBoundaryProperties

      public FacetChart setLegendBoundaryProperties(DrawLine legendBoundaryProperties) throws IllegalStateException
      Properties for top boundary of the legend are, when there is already an outer container around the whole chart. see drawLegendBoundary
      Parameters:
      legendBoundaryProperties - New legendBoundaryProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLegendBoundaryProperties

      public DrawLine getLegendBoundaryProperties()
      Properties for top boundary of the legend are, when there is already an outer container around the whole chart. see drawLegendBoundary
      Returns:
      Current legendBoundaryProperties value. Default value is null
    • setLegendItemPadding

      public FacetChart setLegendItemPadding(int legendItemPadding) throws IllegalStateException
      Padding between each swatch and label pair.
      Parameters:
      legendItemPadding - New legendItemPadding value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLegendItemPadding

      public int getLegendItemPadding()
      Padding between each swatch and label pair.
      Returns:
      Current legendItemPadding value. Default value is 5
    • setLegendLabelProperties

      public FacetChart setLegendLabelProperties(DrawLabel legendLabelProperties) throws IllegalStateException
      Properties for labels shown next to legend color swatches.
      Parameters:
      legendLabelProperties - New legendLabelProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLegendLabelProperties

      public DrawLabel getLegendLabelProperties()
      Properties for labels shown next to legend color swatches.
      Returns:
      Current legendLabelProperties value. Default value is null
    • setLegendMargin

      public FacetChart setLegendMargin(int legendMargin) throws IllegalStateException
      Space between the legend and the chart rect or axis labels (whatever the legend is adjacent to.
      Parameters:
      legendMargin - New legendMargin value. Default value is 10
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLegendMargin

      public int getLegendMargin()
      Space between the legend and the chart rect or axis labels (whatever the legend is adjacent to.
      Returns:
      Current legendMargin value. Default value is 10
    • setLegendPadding

      public FacetChart setLegendPadding(int legendPadding) throws IllegalStateException
      Padding around the legend as a whole.
      Parameters:
      legendPadding - New legendPadding value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLegendPadding

      public int getLegendPadding()
      Padding around the legend as a whole.
      Returns:
      Current legendPadding value. Default value is 5
    • setLegendRectHeight

      public FacetChart setLegendRectHeight(int legendRectHeight) throws IllegalStateException
      If drawing a border around the legend, the height of the drawn Rectangle.
      Parameters:
      legendRectHeight - New legendRectHeight value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLegendRectHeight

      public int getLegendRectHeight()
      If drawing a border around the legend, the height of the drawn Rectangle.
      Returns:
      Current legendRectHeight value. Default value is 5
    • setLegendRectProperties

      public FacetChart setLegendRectProperties(DrawRect legendRectProperties) throws IllegalStateException
      Properties for rectangle around the legend as a whole.
      Parameters:
      legendRectProperties - New legendRectProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLegendRectProperties

      public DrawRect getLegendRectProperties()
      Properties for rectangle around the legend as a whole.
      Returns:
      Current legendRectProperties value. Default value is null
    • setLegendSwatchProperties

      public FacetChart setLegendSwatchProperties(DrawRect legendSwatchProperties) throws IllegalStateException
      Properties for the swatches of color shown in the legend.
      Parameters:
      legendSwatchProperties - New legendSwatchProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLegendSwatchProperties

      public DrawRect getLegendSwatchProperties()
      Properties for the swatches of color shown in the legend.
      Returns:
      Current legendSwatchProperties value. Default value is null
    • setLegendSwatchSize

      public FacetChart setLegendSwatchSize(int legendSwatchSize) throws IllegalStateException
      Size of individual color swatches in legend.
      Parameters:
      legendSwatchSize - New legendSwatchSize value. Default value is 16
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLegendSwatchSize

      public int getLegendSwatchSize()
      Size of individual color swatches in legend.
      Returns:
      Current legendSwatchSize value. Default value is 16
    • setLegendTextPadding

      public FacetChart setLegendTextPadding(int legendTextPadding) throws IllegalStateException
      Padding between color swatch and its label.
      Parameters:
      legendTextPadding - New legendTextPadding value. Default value is 5
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLegendTextPadding

      public int getLegendTextPadding()
      Padding between color swatch and its label.
      Returns:
      Current legendTextPadding value. Default value is 5
    • setLogBase

      public FacetChart setLogBase(int logBase) throws IllegalStateException
      When useLogGradations, base value for logarithmic gradation lines. Gradation lines will be shown at every power of this value plus intervening values specified by logGradations.
      Parameters:
      logBase - New logBase value. Default value is 10
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLogBase

      public int getLogBase()
      When useLogGradations, base value for logarithmic gradation lines. Gradation lines will be shown at every power of this value plus intervening values specified by logGradations.
      Returns:
      Current logBase value. Default value is 10
    • setLogGradations

      public FacetChart setLogGradations(float... logGradations) throws IllegalStateException
      When useLogGradations is set, gradation lines to show in between powers, expressed as a series of integer or float values between 1 and logBase.

      Some common possibilities (for base 10):

           [ 1 ] // show only orders of magnitude (0.1, 1, 10, 100, etc)
           [ 1, 5 ] // show only orders of magnitude plus halfway mark
           [ 1, 2, 4, 8 ] // show powers of 2 between orders
           [ 1, 2.5, 5, 7.5 ] // show quarters
        
      Or base 2:
           [ 1 ]
           [ 1, 1.5 ]
        
      Parameters:
      logGradations - New logGradations value. Default value is [ 1,2,4,6,8 ]
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLogGradations

      public float[] getLogGradations()
      When useLogGradations is set, gradation lines to show in between powers, expressed as a series of integer or float values between 1 and logBase.

      Some common possibilities (for base 10):

           [ 1 ] // show only orders of magnitude (0.1, 1, 10, 100, etc)
           [ 1, 5 ] // show only orders of magnitude plus halfway mark
           [ 1, 2, 4, 8 ] // show powers of 2 between orders
           [ 1, 2.5, 5, 7.5 ] // show quarters
        
      Or base 2:
           [ 1 ]
           [ 1, 1.5 ]
        
      Returns:
      Current logGradations value. Default value is [ 1,2,4,6,8 ]
    • setLogScale

      public FacetChart setLogScale(Boolean logScale) throws IllegalStateException
      Whether to use logarithmic scaling for values.

      Logarithmic scale charts show an equivalent percentage increase as equivalent distance on the chart. That is, 10 and 100 are the same distance apart as 100 and 1000 (each being a 10 times or 1000% increase).

      Parameters:
      logScale - New logScale value. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getLogScale

      public Boolean getLogScale()
      Whether to use logarithmic scaling for values.

      Logarithmic scale charts show an equivalent percentage increase as equivalent distance on the chart. That is, 10 and 100 are the same distance apart as 100 and 1000 (each being a 10 times or 1000% increase).

      Returns:
      Current logScale value. Default value is false
    • setLogScalePointColor

      public FacetChart setLogScalePointColor(boolean logScalePointColor) throws IllegalStateException
      Whether to use logarithmic scaling for the color scale of the data points. Defaults to the value of logScale.
      Parameters:
      logScalePointColor - New logScalePointColor value. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLogScalePointColor

      public boolean getLogScalePointColor()
      Whether to use logarithmic scaling for the color scale of the data points. Defaults to the value of logScale.
      Returns:
      Current logScalePointColor value. Default value is false
      See Also:
    • setLogScalePointSize

      public FacetChart setLogScalePointSize(boolean logScalePointSize) throws IllegalStateException
      Whether to use logarithmic scaling for the data point sizes. Defaults to the value of logScale.
      Parameters:
      logScalePointSize - New logScalePointSize value. Default value is false
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLogScalePointSize

      public boolean getLogScalePointSize()
      Whether to use logarithmic scaling for the data point sizes. Defaults to the value of logScale.
      Returns:
      Current logScalePointSize value. Default value is false
      See Also:
    • setLowErrorMetric

      public FacetChart setLowErrorMetric(String lowErrorMetric) throws IllegalStateException
      lowErrorMetric and highErrorMetric can be used to cause error bars to appear above and below the main data point.

      lowErrorMetric and highErrorMetric provide the name of an additional attributes that appears in each Record holding the low error value and high error value respectively.

      Error bars are supported for single-axis charts only.

      Parameters:
      lowErrorMetric - New lowErrorMetric value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getLowErrorMetric

      public String getLowErrorMetric()
      lowErrorMetric and highErrorMetric can be used to cause error bars to appear above and below the main data point.

      lowErrorMetric and highErrorMetric provide the name of an additional attributes that appears in each Record holding the low error value and high error value respectively.

      Error bars are supported for single-axis charts only.

      Returns:
      Current lowErrorMetric value. Default value is null
      See Also:
    • setMajorTickGradations

      public FacetChart setMajorTickGradations(float... majorTickGradations) throws IllegalStateException
      List of tick marks that should be drawn as major ticks, expressed as a series of numbers between 1 and 10, representing boundaries within a given order of magnitude (power of 10). These numbers must be multiples of gradationGaps, or no ticks will end up as minor ticks.

      The default setting of [1] means that major ticks are used for powers of 10 only. A setting of [1,5] would mean that major ticks are also used at half-orders of magnitude, such as 0.5 or 50. For example, if used with a gradationGaps setting of [1,2.5] for a chart showing values between 0 and 1, this would result in major ticks at 0, 1 and 0.5, and minor ticks at 0.25 and 0.75.

      See also majorTickTimeIntervals for controlling major vs minor ticks for the X-axis of time/date-valued Scatter plots.

      If this method is called after the component has been drawn/initialized: Setter for majorTickGradations.

      Parameters:
      majorTickGradations - new majorTickGradations value. Default value is [1]
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMajorTickGradations

      public float[] getMajorTickGradations()
      List of tick marks that should be drawn as major ticks, expressed as a series of numbers between 1 and 10, representing boundaries within a given order of magnitude (power of 10). These numbers must be multiples of gradationGaps, or no ticks will end up as minor ticks.

      The default setting of [1] means that major ticks are used for powers of 10 only. A setting of [1,5] would mean that major ticks are also used at half-orders of magnitude, such as 0.5 or 50. For example, if used with a gradationGaps setting of [1,2.5] for a chart showing values between 0 and 1, this would result in major ticks at 0, 1 and 0.5, and minor ticks at 0.25 and 0.75.

      See also majorTickTimeIntervals for controlling major vs minor ticks for the X-axis of time/date-valued Scatter plots.

      Returns:
      Current majorTickGradations value. Default value is [1]
    • setMajorTickTimeIntervals

      public FacetChart setMajorTickTimeIntervals(String... majorTickTimeIntervals)
      When ticks are being shown on the X axis for a Scatter plot where the X axis uses time/date values, controls the intervals which are shown as major ticks.

      The intervals are specified as Strings, in the same way as otherAxisGradationTimes.

      For any given interval, the first major tick is shown for the next greatest time unit. For example, for interval such as "2h" (2 hours), the first major tick starts on the day boundary (whether that day boundary is visible in the chart or not).

      By default, all ticks are shown as major ticks.

      If this method is called after the component has been drawn/initialized: Setter for majorTickTimeIntervals.

      Parameters:
      majorTickTimeIntervals - new majorTickTimeIntervals value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getMajorTickTimeIntervals

      public String[] getMajorTickTimeIntervals()
      When ticks are being shown on the X axis for a Scatter plot where the X axis uses time/date values, controls the intervals which are shown as major ticks.

      The intervals are specified as Strings, in the same way as otherAxisGradationTimes.

      For any given interval, the first major tick is shown for the next greatest time unit. For example, for interval such as "2h" (2 hours), the first major tick starts on the day boundary (whether that day boundary is visible in the chart or not).

      By default, all ticks are shown as major ticks.

      Returns:
      Current majorTickTimeIntervals value. Default value is null
    • setMatchBarChartDataLineColor

      public FacetChart setMatchBarChartDataLineColor(Boolean matchBarChartDataLineColor)
      Setting to define whether the border around the bar chart area should be the same color as the main chart area.
      Parameters:
      matchBarChartDataLineColor - New matchBarChartDataLineColor value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getMatchBarChartDataLineColor

      public Boolean getMatchBarChartDataLineColor()
      Setting to define whether the border around the bar chart area should be the same color as the main chart area.
      Returns:
      Current matchBarChartDataLineColor value. Default value is null
    • setMaxBarThickness

      public FacetChart setMaxBarThickness(int maxBarThickness) throws IllegalStateException
      Bars will not be drawn over this thickness, instead, margins will be increased.
      Parameters:
      maxBarThickness - New maxBarThickness value. Default value is 150
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
      • com.smartgwt.client.widgets.chart.FacetChart#getMinClusterSize
    • getMaxBarThickness

      public int getMaxBarThickness()
      Bars will not be drawn over this thickness, instead, margins will be increased.
      Returns:
      Current maxBarThickness value. Default value is 150
      See Also:
      • com.smartgwt.client.widgets.chart.FacetChart#getMinClusterSize
    • setMaxDataPointSize

      public FacetChart setMaxDataPointSize(double maxDataPointSize) throws IllegalStateException
      The maximum allowed data point size when controlled by pointSizeMetric.
      Parameters:
      maxDataPointSize - New maxDataPointSize value. Default value is 14
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMaxDataPointSize

      public double getMaxDataPointSize()
      The maximum allowed data point size when controlled by pointSizeMetric.
      Returns:
      Current maxDataPointSize value. Default value is 14
    • setMaxDataZIndex

      public FacetChart setMaxDataZIndex(Integer maxDataZIndex) throws IllegalStateException
      Maximum allowed zIndex that can be specified through zIndexMetric in a histogram chart. Any zIndex values exceeding this property will be internally clipped so as to not exceed it. While this property can be increased, note that very large values may hit limitations related to the browser's implementation of the current DrawPane.drawingType.
      Parameters:
      maxDataZIndex - New maxDataZIndex value. Default value is 10000
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getMaxDataZIndex

      public Integer getMaxDataZIndex()
      Maximum allowed zIndex that can be specified through zIndexMetric in a histogram chart. Any zIndex values exceeding this property will be internally clipped so as to not exceed it. While this property can be increased, note that very large values may hit limitations related to the browser's implementation of the current DrawPane.drawingType.
      Returns:
      Current maxDataZIndex value. Default value is 10000
      See Also:
    • setMetricFacetId

      public FacetChart setMetricFacetId(String metricFacetId) throws IllegalStateException
      Specifies the "id" of the default metric facet value. The default metric is used with lowErrorMetric and highErrorMetric when showing error bars.
      Parameters:
      metricFacetId - New metricFacetId value. Default value is "metric"
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMetricFacetId

      public String getMetricFacetId()
      Specifies the "id" of the default metric facet value. The default metric is used with lowErrorMetric and highErrorMetric when showing error bars.
      Returns:
      Current metricFacetId value. Default value is "metric"
    • setMinBarThickness

      public FacetChart setMinBarThickness(int minBarThickness) throws IllegalStateException
      If bars would be smaller than this size, margins are reduced until bars overlap.
      Parameters:
      minBarThickness - New minBarThickness value. Default value is 4
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
      • com.smartgwt.client.widgets.chart.FacetChart#getMinClusterSize
    • getMinBarThickness

      public int getMinBarThickness()
      If bars would be smaller than this size, margins are reduced until bars overlap.
      Returns:
      Current minBarThickness value. Default value is 4
      See Also:
      • com.smartgwt.client.widgets.chart.FacetChart#getMinClusterSize
    • setMinChartHeight

      public FacetChart setMinChartHeight(Integer minChartHeight) throws IllegalStateException
      Minimum height for this chart instance.
      Parameters:
      minChartHeight - New minChartHeight value. Default value is 1
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMinChartHeight

      public Integer getMinChartHeight()
      Minimum height for this chart instance.
      Returns:
      Returns the minimum height for the chart body. Default value is 1
    • setMinChartWidth

      public FacetChart setMinChartWidth(Integer minChartWidth) throws IllegalStateException
      Minimum width for this chart instance.
      Parameters:
      minChartWidth - New minChartWidth value. Default value is 1
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMinChartWidth

      public Integer getMinChartWidth()
      Minimum width for this chart instance.
      Returns:
      Returns the minimum width for the chart body. Default value is 1
    • setMinContentHeight

      public FacetChart setMinContentHeight(int minContentHeight)
      When autoScrollContent is true, limits the minimum height of the chart-content, including data, labels, title and legends. If this widget is sized smaller than this height, scrollbars are introduced to reach the hidden content. See minContentWidth to affect the minimum horizontal content-size.
      Parameters:
      minContentHeight - New minContentHeight value. Default value is 150
      Returns:
      FacetChart instance, for chaining setter calls
    • getMinContentHeight

      public int getMinContentHeight()
      When autoScrollContent is true, limits the minimum height of the chart-content, including data, labels, title and legends. If this widget is sized smaller than this height, scrollbars are introduced to reach the hidden content. See minContentWidth to affect the minimum horizontal content-size.
      Returns:
      Returns the minContentHeight for this facet chart when autoScrollContent is enabled. Default value is 150
    • setMinContentWidth

      public FacetChart setMinContentWidth(int minContentWidth)
      When autoScrollContent is true, limits the minimum width of the chart-content, including data, labels, titles and legends. If this widget is sized smaller than this width, scrollbars are introduced to reach the hidden content. See minContentHeight to affect the minimum vertical content-size.
      Parameters:
      minContentWidth - New minContentWidth value. Default value is 150
      Returns:
      FacetChart instance, for chaining setter calls
    • getMinContentWidth

      public int getMinContentWidth()
      When autoScrollContent is true, limits the minimum width of the chart-content, including data, labels, titles and legends. If this widget is sized smaller than this width, scrollbars are introduced to reach the hidden content. See minContentHeight to affect the minimum vertical content-size.
      Returns:
      Returns the minContentWidth for this facet chart when autoScrollContent is enabled. Default value is 150
    • setMinDataPointSize

      public FacetChart setMinDataPointSize(double minDataPointSize) throws IllegalStateException
      The minimum allowed data point size when controlled by pointSizeMetric.
      Parameters:
      minDataPointSize - New minDataPointSize value. Default value is 3
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMinDataPointSize

      public double getMinDataPointSize()
      The minimum allowed data point size when controlled by pointSizeMetric.
      Returns:
      Current minDataPointSize value. Default value is 3
    • setMinDataSpreadPercent

      public FacetChart setMinDataSpreadPercent(int minDataSpreadPercent) throws IllegalStateException
      If all data values would be spread across less than minDataSpreadPercent of the axis, the start values of axes will be automatically adjusted to make better use of space.

      For example, if a column chart has all data values between 500,000 and 500,100, if the axis starts at 0, differences in column heights will be visually indistinguishable. In this case, since all data values appear in well under 30% of the axis length, the default minDataSpreadPercent setting would cause the axis to start at a value that would make the column heights obviously different (for example, starting the axis as 500,000).

      Setting an explicit axisStartValue or axisEndValue, disables this behavior, as does setting minDataSpreadPercent to 0.

      For multi-axis charts, use MetricSettings.minDataSpreadPercent for per-axis settings.

      For Bubble and Scatter charts, minDataSpreadPercent affects only the y-axis of the chart. The property minXDataSpreadPercent must be used to enable the corresponding feature for the x-axis.

      Parameters:
      minDataSpreadPercent - New minDataSpreadPercent value. Default value is 30
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMinDataSpreadPercent

      public int getMinDataSpreadPercent()
      If all data values would be spread across less than minDataSpreadPercent of the axis, the start values of axes will be automatically adjusted to make better use of space.

      For example, if a column chart has all data values between 500,000 and 500,100, if the axis starts at 0, differences in column heights will be visually indistinguishable. In this case, since all data values appear in well under 30% of the axis length, the default minDataSpreadPercent setting would cause the axis to start at a value that would make the column heights obviously different (for example, starting the axis as 500,000).

      Setting an explicit axisStartValue or axisEndValue, disables this behavior, as does setting minDataSpreadPercent to 0.

      For multi-axis charts, use MetricSettings.minDataSpreadPercent for per-axis settings.

      For Bubble and Scatter charts, minDataSpreadPercent affects only the y-axis of the chart. The property minXDataSpreadPercent must be used to enable the corresponding feature for the x-axis.

      Returns:
      Current minDataSpreadPercent value. Default value is 30
    • setMinLabelGap

      public FacetChart setMinLabelGap(Integer minLabelGap) throws IllegalStateException
      Minimum gap between labels on the X axis before some labels are omitted or larger time granularity is shown (eg show days instead of hours) based on the labelCollapseMode.

      Default is based on label orientation. If labels are vertical, the minimum gap is the height of half a line of text. If horizontal it's the width of 4 "X" letters.

      Parameters:
      minLabelGap - New minLabelGap value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getMinLabelGap

      public Integer getMinLabelGap()
      Minimum gap between labels on the X axis before some labels are omitted or larger time granularity is shown (eg show days instead of hours) based on the labelCollapseMode.

      Default is based on label orientation. If labels are vertical, the minimum gap is the height of half a line of text. If horizontal it's the width of 4 "X" letters.

      Returns:
      Current minLabelGap value. Default value is null
    • setMinorTickLength

      public FacetChart setMinorTickLength(int minorTickLength)
      Length of minor ticks marks shown along axis, if minor tick marks are enabled.

      If this method is called after the component has been drawn/initialized: Setter for minorTickLength.
      Parameters:
      minorTickLength - new minorTickLength value. Default value is 2
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getMinorTickLength

      public int getMinorTickLength()
      Length of minor ticks marks shown along axis, if minor tick marks are enabled.
      Returns:
      Current minorTickLength value. Default value is 2
      See Also:
    • setMinXDataSpreadPercent

      public FacetChart setMinXDataSpreadPercent(int minXDataSpreadPercent) throws IllegalStateException
      For scatter charts only, if all data points would be spread across less than minXDataSpreadPercent of the x-axis, the start value of x-axis will be automatically adjusted to make better use of space.

      Setting an explicit xAxisStartValue disables this behavior, as does setting minXDataSpreadPercent to 0.

      Parameters:
      minXDataSpreadPercent - New minXDataSpreadPercent value. Default value is 30
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getMinXDataSpreadPercent

      public int getMinXDataSpreadPercent()
      For scatter charts only, if all data points would be spread across less than minXDataSpreadPercent of the x-axis, the start value of x-axis will be automatically adjusted to make better use of space.

      Setting an explicit xAxisStartValue disables this behavior, as does setting minXDataSpreadPercent to 0.

      Returns:
      Current minXDataSpreadPercent value. Default value is 30
      See Also:
    • setOtherAxisGradationGaps

      public FacetChart setOtherAxisGradationGaps(float... otherAxisGradationGaps)
      Like gradationGaps, except allows control of gradations for the X (horizontal) axis, for Scatter charts only.

      See also otherAxisGradationTimes for control of gradations when the X axis is time-valued.

      Defaults to the value of pixelsPerGradation if unset.

      If this method is called after the component has been drawn/initialized: Setter for otherAxisGradationGaps.

      Parameters:
      otherAxisGradationGaps - new otherAxisGradationGaps value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
    • getOtherAxisGradationGaps

      public float[] getOtherAxisGradationGaps()
      Like gradationGaps, except allows control of gradations for the X (horizontal) axis, for Scatter charts only.

      See also otherAxisGradationTimes for control of gradations when the X axis is time-valued.

      Defaults to the value of pixelsPerGradation if unset.

      Returns:
      Current otherAxisGradationGaps value. Default value is null
    • setOtherAxisGradationTimes

      public FacetChart setOtherAxisGradationTimes(String... otherAxisGradationTimes)
      For charts that have a date/time-valued X-axis, gradations can instead be specified as Strings, consisting of a number and trailing letter code, where the letter code indicates the unit of time. Valid time units are "ms" (millisecond), "s" (second), "mn" (minute), "h" (hour), "d" (day), "w" (week), "m" (month), "q" (quarter, 3-months), "y" (year).

      When time units are used, there is no way to scale the same unit to a much larger or smaller range of time (as there is with numeric gradations). For example, a setting of "30mn" meaning "30 minutes" does not mean that 30 hours is a natural choice for chart with a longer timeline (days should obviously be chosen instead). Therefore, when specifying time gradations, candidate gradations must be provided for the entire possible displayed range. If insufficient gradations are specified, this can result in unreadable charts; for example, if the largest available gradation is "15mn" and the chart is showing a full week's data in around 500px, there will be more than one gradation per pixel, and labels will be drawn on top of each other.

      To prevent this, be sure to specify enough gradations to cover the all time ranges your chart may need to display. However, if gradations are not specified for granularities under 1 second or over 1 year, further gradations will be chosen based on using otherAxisGradationGaps to choose fractions of seconds or multiples of years.

      The default setting is effectively:

        ["1s", "15s", "30s", "1mn", "5mn", "15mn", "30mn", "1h", "1d", "1w", "1m", "1q", "1y"]
        


      If this method is called after the component has been drawn/initialized: Setter for otherAxisGradationTimes.
      Parameters:
      otherAxisGradationTimes - new otherAxisGradationTimes value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getOtherAxisGradationTimes

      public String[] getOtherAxisGradationTimes()
      For charts that have a date/time-valued X-axis, gradations can instead be specified as Strings, consisting of a number and trailing letter code, where the letter code indicates the unit of time. Valid time units are "ms" (millisecond), "s" (second), "mn" (minute), "h" (hour), "d" (day), "w" (week), "m" (month), "q" (quarter, 3-months), "y" (year).

      When time units are used, there is no way to scale the same unit to a much larger or smaller range of time (as there is with numeric gradations). For example, a setting of "30mn" meaning "30 minutes" does not mean that 30 hours is a natural choice for chart with a longer timeline (days should obviously be chosen instead). Therefore, when specifying time gradations, candidate gradations must be provided for the entire possible displayed range. If insufficient gradations are specified, this can result in unreadable charts; for example, if the largest available gradation is "15mn" and the chart is showing a full week's data in around 500px, there will be more than one gradation per pixel, and labels will be drawn on top of each other.

      To prevent this, be sure to specify enough gradations to cover the all time ranges your chart may need to display. However, if gradations are not specified for granularities under 1 second or over 1 year, further gradations will be chosen based on using otherAxisGradationGaps to choose fractions of seconds or multiples of years.

      The default setting is effectively:

        ["1s", "15s", "30s", "1mn", "5mn", "15mn", "30mn", "1h", "1d", "1w", "1m", "1q", "1y"]
        
      Returns:
      Current otherAxisGradationTimes value. Default value is null
      See Also:
    • setOtherAxisPixelsPerGradation

      public FacetChart setOtherAxisPixelsPerGradation(Integer otherAxisPixelsPerGradation)
      Ideal number of pixels to leave between each gradation on the x (horizontal axis), for Scatter plots only.

      Defaults to the value of pixelsPerGradation if unset.

      If this method is called after the component has been drawn/initialized: Setter for otherAxisPixelsPerGradation.

      Parameters:
      otherAxisPixelsPerGradation - new otherAxisPixelsPerGradation value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getOtherAxisPixelsPerGradation

      public Integer getOtherAxisPixelsPerGradation()
      Ideal number of pixels to leave between each gradation on the x (horizontal axis), for Scatter plots only.

      Defaults to the value of pixelsPerGradation if unset.

      Returns:
      Current otherAxisPixelsPerGradation value. Default value is null
      See Also:
    • setOuterLabelFacetLineProperties

      public FacetChart setOuterLabelFacetLineProperties(DrawLine outerLabelFacetLineProperties) throws IllegalStateException
      Properties for the lines drawn to show the span of outer data label facet values, if present.
      Parameters:
      outerLabelFacetLineProperties - New outerLabelFacetLineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getOuterLabelFacetLineProperties

      public DrawLine getOuterLabelFacetLineProperties()
      Properties for the lines drawn to show the span of outer data label facet values, if present.
      Returns:
      Current outerLabelFacetLineProperties value. Default value is null
    • setPadChartRectByCornerRadius

      public FacetChart setPadChartRectByCornerRadius(boolean padChartRectByCornerRadius) throws IllegalStateException
      If showChartRect is enabled and if chartRectProperties specifies a nonzero rounding, whether the padding around the inside of the chart rect. should include at least the radius of the rounded corner.
      Parameters:
      padChartRectByCornerRadius - New padChartRectByCornerRadius value. Default value is true
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getPadChartRectByCornerRadius

      public boolean getPadChartRectByCornerRadius()
      If showChartRect is enabled and if chartRectProperties specifies a nonzero rounding, whether the padding around the inside of the chart rect. should include at least the radius of the rounded corner.
      Returns:
      Current padChartRectByCornerRadius value. Default value is true
    • setPieBorderProperties

      public FacetChart setPieBorderProperties(DrawOval pieBorderProperties) throws IllegalStateException
      Properties for the border around a pie chart.
      Parameters:
      pieBorderProperties - New pieBorderProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getPieBorderProperties

      public DrawOval getPieBorderProperties()
      Properties for the border around a pie chart.
      Returns:
      Current pieBorderProperties value. Default value is null
    • setPieLabelAngleStart

      public FacetChart setPieLabelAngleStart(int pieLabelAngleStart) throws IllegalStateException
      Angle where first label is placed in a Pie chart in stacked mode, in degrees.
      Parameters:
      pieLabelAngleStart - New pieLabelAngleStart value. Default value is 20
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getPieLabelAngleStart

      public int getPieLabelAngleStart()
      Angle where first label is placed in a Pie chart in stacked mode, in degrees.
      Returns:
      Current pieLabelAngleStart value. Default value is 20
    • setPieLabelLineExtent

      public FacetChart setPieLabelLineExtent(int pieLabelLineExtent) throws IllegalStateException
      How far label lines stick out of the pie radius in a Pie chart in stacked mode.
      Parameters:
      pieLabelLineExtent - New pieLabelLineExtent value. Default value is 7
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getPieLabelLineExtent

      public int getPieLabelLineExtent()
      How far label lines stick out of the pie radius in a Pie chart in stacked mode.
      Returns:
      Current pieLabelLineExtent value. Default value is 7
    • setPieLabelLineProperties

      public FacetChart setPieLabelLineProperties(DrawLine pieLabelLineProperties)
      Properties for pie label line
      Parameters:
      pieLabelLineProperties - New pieLabelLineProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      See Also:
    • getPieLabelLineProperties

      public DrawLine getPieLabelLineProperties()
      Properties for pie label line
      Returns:
      Current pieLabelLineProperties value. Default value is null
    • setPieRingBorderProperties

      public FacetChart setPieRingBorderProperties(DrawOval pieRingBorderProperties) throws IllegalStateException
      Properties for pie ring border
      Parameters:
      pieRingBorderProperties - New pieRingBorderProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getPieRingBorderProperties

      public DrawOval getPieRingBorderProperties()
      Properties for pie ring border
      Returns:
      Current pieRingBorderProperties value. Default value is null
    • setPieSliceProperties

      public FacetChart setPieSliceProperties(DrawSector pieSliceProperties) throws IllegalStateException
      Properties for pie slices
      Parameters:
      pieSliceProperties - New pieSliceProperties value. Default value is null
      Returns:
      FacetChart instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getPieSliceProperties

      public DrawSector getPieSliceProperties()
      Properties for pie slices
      Returns:
      Current pieSliceProperties value. Default value is null
    • setPieStartAngle

      public FacetChart setPieStartAngle(Integer pieStartAngle) throws IllegalStateException
      Default angle in degrees where pie charts start drawing sectors to represent data value