com.smartgwt.client.widgets.chart

## Class FacetChart

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.smartgwt.client.widgets.BaseWidget
      - - com.smartgwt.client.widgets.Canvas
        - - com.smartgwt.client.widgets.drawing.DrawPane
          - - com.smartgwt.client.widgets.chart.FacetChart

- All Implemented Interfaces:
    com.google.gwt.event.logical.shared.HasAttachHandlers, com.google.gwt.event.shared.HasHandlers, com.google.gwt.user.client.EventListener, com.google.gwt.user.client.ui.HasVisibility, com.google.gwt.user.client.ui.IsWidget, LogicalStructure, HasChartBackgroundDrawnHandlers, HasChartDrawnHandlers, HasDataLabelClickHandlers, HasDataLabelHoverHandlers, HasLegendClickHandlers, HasLegendHoverHandlers, HasValueClickHandlers, HasZoomChangedHandlers, HasDrawEndHandlers, HasDrawStartHandlers, HasClearHandlers, HasClickHandlers, HasDoubleClickHandlers, HasDragMoveHandlers, HasDragRepositionMoveHandlers, HasDragRepositionStartHandlers, HasDragRepositionStopHandlers, HasDragResizeMoveHandlers, HasDragResizeStartHandlers, HasDragResizeStopHandlers, HasDragStartHandlers, HasDragStopHandlers, HasDropHandlers, HasDropMoveHandlers, HasDropOutHandlers, HasDropOverHandlers, HasFocusChangedHandlers, HasHoverHandlers, HasHoverHiddenHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseStillDownHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasMovedHandlers, HasParentMovedHandlers, HasResizedHandlers, HasRightMouseDownHandlers, HasRuleContextChangedHandlers, HasScrolledHandlers, HasShowContextMenuHandlers, HasVisibilityChangedHandlers

      public class FacetChart
      extends DrawPane
      implements HasChartBackgroundDrawnHandlers, HasChartDrawnHandlers, HasDataLabelClickHandlers, HasDataLabelHoverHandlers, HasLegendClickHandlers, HasLegendHoverHandlers, HasValueClickHandlers, HasZoomChangedHandlers

  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 Drawing and Charts `Optional 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");

  The following SDK examples demonstrate charts with a single facet:

  - Log Scaling example,
  - Interactive Data Points example, and
  - Adding Element example.
  See the following SDK examples for examples of charts with multiple facets:
  - @see Simple Chart example,
  - Multi-Series Chart example, and
  - Dynamic Data example.

  ### 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 `null`s. 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.

  ### 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()`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.smartgwt.client.widgets.drawing.DrawPane

      `DrawPane.InvalidDrawingTypeException`

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `com.google.gwt.user.client.ui.UIObject.DebugIdImpl, com.google.gwt.user.client.ui.UIObject.DebugIdImplEnabled`

  - ### Field Summary

    - ### Fields inherited from class com.smartgwt.client.widgets.BaseWidget

      `config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassName`

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FacetChart()`
    `FacetChart(com.google.gwt.core.client.JavaScriptObject jsObj)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.google.gwt.event.shared.HandlerRegistration` | `addChartBackgroundDrawnHandler(ChartBackgroundDrawnHandler handler)` Add a chartBackgroundDrawn handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addChartDrawnHandler(ChartDrawnHandler handler)` Add a chartDrawn handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDataLabelClickHandler(DataLabelClickHandler handler)` Add a dataLabelClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDataLabelHoverHandler(DataLabelHoverHandler handler)` Add a dataLabelHover handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addLegendClickHandler(LegendClickHandler handler)` Add a legendClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addLegendHoverHandler(LegendHoverHandler handler)` Add a legendHover handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addValueClickHandler(ValueClickHandler handler)` Add a valueClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addZoomChangedHandler(ZoomChangedHandler handler)` Add a zoomChanged handler.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)` Changes the defaults for Canvas AutoChildren named `autoChildName`.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)` Changes the defaults for FormItem AutoChildren named `autoChildName`.
    `protected com.google.gwt.core.client.JavaScriptObject` | `create()`
    `java.lang.Boolean` | `drawnValueContainsPoint(DrawnValue drawnValue)` Returns whether a given `DrawnValue` contains a point.
    `java.lang.Boolean` | `drawnValueContainsPoint(DrawnValue drawnValue, java.lang.Integer x)`
    `java.lang.Boolean` | `drawnValueContainsPoint(DrawnValue drawnValue, java.lang.Integer x, java.lang.Integer y)` Returns whether a given `DrawnValue` contains a point.
    `java.lang.String` | `formatFacetValueId(java.lang.Object value, Facet facet)` Return the text string to display for facet value labels that appear in chart legends or as labels for `chartType`s that have circumference or non-axis labels, such as for example "Pie" or "Radar" charts.
    `java.lang.String` | `formatSegmentLabel(java.lang.Object startValue, java.lang.Object endValue)` Defines the format of the label for a segment in a histogram chart.
    `boolean` | `getAllowBubbleGradients()` Setting this flag to `false` prevents the chart from drawing fill gradients into the bubbles of each data point.
    `ChartType[]` | `getAllowedChartTypes()` Other `chart types` that the end user will be allowed to switch to, using the built-in context menu.
    `java.lang.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`.
    `boolean` | `getAutoScrollData()` For a column, histogram, line, or area chart that has `facet values displayed along the x-axis`, should the chart be expanded automatically 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 thicknesses` or the margins between them.
    `AutoScrollDataApproach` | `getAutoScrollDataApproach()` If set, overrides the default behavior of `autoScrollData`, potentially limiting what factors drive the automatic horizontal expansion of the chart.
    `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.
    `java.lang.Double` | `getAxisEndValue()` End value for the primary axis of the chart.
    `java.lang.Double` | `getAxisStartValue()` Start value for the primary axis of the chart.
    `DrawRect` | `getBackgroundBandProperties()` Properties for background band
    `java.lang.Boolean` | `getBandedBackground()` Whether to show alternating color bands in the background of chart.
    `java.lang.Boolean` | `getBandedStandardDeviations()` Whether to show color bands between the `standard deviation` lines.
    `int` | `getBarMargin()` Distance between bars.
    `DrawRect` | `getBarProperties()` Properties for bar
    `java.lang.Boolean` | `getBrightenAllOnHover()` When hovering over a bar chart block, should the whole bar chart area be brightened Default behaviour is to just brighten the line color around the bar chart area
    `int` | `getBubbleHoverMaxDistance()` Maximum distance from the *outer radius* of the nearest bubble when hover will be shown.
    `DrawItem` | `getBubbleProperties()` Properties for the shapes displayed around the data points (for example, in a bubble chart).
    `java.lang.Boolean` | `getCanMoveAxes()` Whether the positions of value axes can be changed.
    `java.lang.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.
    `java.lang.Boolean` | `getCenterLegend()` Whether to place the `chart legend` with respect to the full, scrollable width of the chart when `autoScrollData` is active.
    `java.lang.Boolean` | `getCenterTitle()` Whether to place the `chart title` with respect to the full, scrollable width of the chart when `autoScrollData` is active.
    `Point` | `getChartCenter()` Returns the centerpoint for radar charts and pie charts.
    `float` | `getChartHeight(boolean recalc)` Deprecated. `GwtFloatVsDouble`
    `double` | `getChartHeightAsDouble(boolean recalc)` Get the height the central chart area, where data elements appear.
    `float` | `getChartLeft()` Deprecated. `GwtFloatVsDouble`
    `double` | `getChartLeftAsDouble()` Get the left margin of the central chart area, where data elements appear.
    `float` | `getChartRadius()` Deprecated. `GwtFloatVsDouble`
    `double` | `getChartRadiusAsDouble()` Returns the radius for radar charts and pie charts.
    `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.
    `DrawRect` | `getChartRectProperties()` Properties for chart rect.
    `float` | `getChartTop()` Deprecated. `GwtFloatVsDouble`
    `double` | `getChartTopAsDouble()` Get the top coordinate of the central chart area, where data elements appear.
    `ChartType` | `getChartType()` See `ChartType` for a list of known types - Column, Bar, Line, Pie, Doughnut, Area, Radar, and Histogram charts are supported.
    `float` | `getChartWidth(boolean recalc)` Deprecated. `GwtFloatVsDouble`
    `double` | `getChartWidthAsDouble(boolean recalc)` Get the width of the central chart area, where data elements appear.
    `float` | `getClusterMarginRatio()` For clustered charts, ratio between margins between individual bars and margins between clusters.
    `java.lang.Float` | `getColorMutePercent()` Should be set to a number between -100 and 100.
    `java.lang.String` | `getColorScaleMetric()` For charts where `showDataPoints` is enabled, this property specifies an additional metric (i.e.
    `RecordList` | `getDataAsRecordList()`
    `DrawLabel` | `getDataAxisLabelProperties()` Properties for labels of data axis.
    `java.lang.String` | `getDataColor(int index)` See `getDataColor(int, java.lang.String, java.lang.String)`
    `java.lang.String` | `getDataColor(int index, java.util.Date facetValueId, java.lang.String purpose)` See `getDataColor(int, java.lang.String, java.lang.String)`
    `java.lang.String` | `getDataColor(int index, java.lang.Double facetValueId, java.lang.String purpose)` See `getDataColor(int, java.lang.String, java.lang.String)`
    `java.lang.String` | `getDataColor(int index, java.lang.Integer facetValueId, java.lang.String purpose)` See `getDataColor(int, java.lang.String, java.lang.String)`
    `java.lang.String` | `getDataColor(int index, java.lang.String facetValueId, java.lang.String purpose)` Get a color from the `dataColors` Array.
    `java.lang.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.
    `Facet` | `getDataLabelFacet()` Returns the `Facet` in the list of `facets` whose `values` are rendered as labels along the data axis of the chart or in the main chart area.
    `java.lang.String` | `getDataLabelHoverHTML(FacetValue facetValue)` Called when the mouse hovers over a data label, that is, a text label showing values from the first facet.
    `DrawLabel` | `getDataLabelProperties()` Properties for data label
    `DrawLine` | `getDataLineProperties()` Properties for lines that show data (as opposed to gradations or borders around the data area).
    `DataLineType` | `getDataLineType()` How to draw lines between adjacent data points in Line and Scatter charts.
    `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.
    `DrawItem` | `getDataOutlineProperties()` Properties for lines that outline a data shape (in filled charts such as area or radar charts).
    `DrawItem` | `getDataPointProperties()` Common properties to apply for all data points (see `showDataPoints`).
    `int` | `getDataPointSize()` Size in pixels for data points drawn for line, area, radar and other chart types.
    `DrawPath` | `getDataShapeProperties()` Properties for data shapes (filled areas in area or radar charts).
    `int` | `getDecimalPrecision()` Default precision used when formatting float numbers for axis labels
    `java.lang.Boolean` | `getDiscontinuousLines()` Whether to treat non-numeric values in the dataset as indicating a break in the data line.
    `DrawOval` | `getDoughnutHoleProperties()` Properties for doughnut hole
    `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.
    `java.lang.Boolean` | `getDrawLegendBoundary()` Whether a boundary should be drawn above the Legend area for circumstances where the chart area already has an outer border.
    `DrawnValue` | `getDrawnValue(FacetValueMap facetValues)` Returns rendering information for the data value specified by the passed facet values.
    `DrawnValue` | `getDrawnValueAtPoint()` Returns a `DrawnValue` object for the data value that is shown nearest to the passed coordinates only if it's under the given coordinates, or under the current mouse event coordinates if no coordinates are passed.
    `DrawnValue` | `getDrawnValueAtPoint(java.lang.Integer x)`
    `DrawnValue` | `getDrawnValueAtPoint(java.lang.Integer x, java.lang.Integer y)`
    `DrawnValue` | `getDrawnValueAtPoint(java.lang.Integer x, java.lang.Integer y, java.lang.String metric)` Returns a `DrawnValue` object for the data value that is shown nearest to the passed coordinates only if it's under the given coordinates, or under the current mouse event coordinates if no coordinates are passed.
    `DrawnValue[]` | `getDrawnValues()` Returns rendering information for the data values specified by the passed facet values.
    `DrawnValue[]` | `getDrawnValues(FacetValueMap facetValues)` Returns rendering information for the data values specified by the passed facet values.
    `DrawnValue[]` | `getDrawnValuesAtPoint()` Returns an array of `DrawnValue` objects for the data values of each metric that are shown nearest to the passed coordinates, but only if they're under the given coordinates, or under the current mouse event coordinates if no coordinates are passed.
    `DrawnValue[]` | `getDrawnValuesAtPoint(java.lang.Integer x)`
    `DrawnValue[]` | `getDrawnValuesAtPoint(java.lang.Integer x, java.lang.Integer y)` Returns an array of `DrawnValue` objects for the data values of each metric that are shown nearest to the passed coordinates, but only if they're under the given coordinates, or under the current mouse event coordinates if no coordinates are passed.
    `java.lang.Boolean` | `getDrawTitleBackground()` should a background color be set behind the Title.
    `java.lang.Boolean` | `getDrawTitleBoundary()` Whether a boundary should be drawn below the title area for circumstances where the chart area already has an outer border.
    `java.lang.String` | `getEditProxyConstructor()` Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
    `java.lang.String` | `getEndValueMetric()` Specifies the attribute in the metric facet that will define the end point of segments in a histogram chart.
    `float` | `getErrorBarColorMutePercent()` This property helps specify the color of the error bars and its value must be a number between -100 and 100.
    `int` | `getErrorBarWidth()` Width of the horizontal line of the "T"-shape portion of the error bar).
    `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).
    `DrawItem` | `getExpectedValueLineProperties()` Properties for the `line drawn at the mean value`.
    `java.lang.String[]` | `getExtraAxisMetrics()` Defines the set of metrics that will be plotted as additional vertical axes.
    `MetricSettings[]` | `getExtraAxisSettings()` For charts will multiple vertical axes, optionally provides settings for how each `extra axis metric` is plotted.
    `Facet` | `getFacet(java.lang.String facetId)` Get a facet definition by facetId.
    `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.
    `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.
    `FacetValue` | `getFacetValue(java.lang.String facetId, java.lang.String facetValueId)` Get facet value definition by facetId and facetValueId.
    `java.lang.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.
    `java.lang.Boolean` | `getFormatStringFacetValueIds()` Whether to call `setXAxisValueFormatter()` or `formatFacetValueId()` on a facet value id when the id is a string.
    `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.
    `int` | `getGradationLabelPadding()` Padding from edge of Y the Axis Label.
    `DrawLabel` | `getGradationLabelProperties()` Properties for gradation labels
    `DrawLine` | `getGradationLineProperties()` Properties for gradation lines
    `float[]` | `getGradations()` Return an array of the gradation values used in the current chart.
    `java.lang.Integer` | `getGradationTickMarkLength()` Deprecated. use `tickLength` instead
    `DrawLine` | `getGradationZeroLineProperties()` Properties for the gradation line drawn for zero (slightly thicker by default).
    `java.lang.String` | `getHighErrorMetric()` See `lowErrorMetric`.
    `int` | `getHoverLabelPadding()` An extra amount of padding to show around the `hoverLabel` when `showValueOnHover` is enabled.
    `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.
    `DrawRect` | `getHoverRectProperties()` Properties for rectangle that draws behind of a floating hover label that represents the data value.
    `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`.
    `LegendAlign` | `getLegendAlign()` Horizontal alignment of the chart's `legend widget`.
    `DrawLine` | `getLegendBoundaryProperties()` Properties for top boundary of the legend are, when there is already an outer container around the whole chart.
    `Facet` | `getLegendFacet()` Returns the `Facet` in the list of `facets` whose `values` are rendered in the chart's legend.
    `java.lang.String` | `getLegendHoverHTML(FacetValue facetValue, FacetValue metricFacetValue)` Called when the mouse hovers over a color swatch or its label in the legend area of the chart.
    `int` | `getLegendItemPadding()` Padding between each swatch and label pair.
    `DrawLabel` | `getLegendLabelProperties()` Properties for labels shown next to legend color swatches.
    `int` | `getLegendMargin()` Space between the legend and the chart rect or axis labels (whatever the legend is adjacent to.
    `int` | `getLegendPadding()` Padding around the legend as a whole.
    `int` | `getLegendRectHeight()` If drawing a border around the legend, the height of the drawn Rectangle.
    `DrawRect` | `getLegendRectProperties()` Properties for rectangle around the legend as a whole.
    `DrawRect` | `getLegendSwatchProperties()` Properties for the swatches of color shown in the legend.
    `int` | `getLegendSwatchSize()` Size of individual color swatches in legend.
    `int` | `getLegendTextPadding()` Padding between color swatch and its label.
    `int` | `getLogBase()` When `useLogGradations`, base value for logarithmic gradation lines.
    `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`.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `getLogicalStructure()` Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `java.lang.Boolean` | `getLogScale()` Whether to use logarithmic scaling for values.
    `boolean` | `getLogScalePointColor()` Whether to use logarithmic scaling for the `color scale` of the data points.
    `boolean` | `getLogScalePointSize()` Whether to use logarithmic scaling for the `data point sizes`.
    `java.lang.String` | `getLowErrorMetric()` `lowErrorMetric` and `highErrorMetric` can be used to cause error bars to appear above and below the main data point.
    `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).
    `java.lang.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.
    `java.lang.Boolean` | `getMatchBarChartDataLineColor()` Setting to define whether the border around the bar chart area should be the same color as the main chart area.
    `java.lang.Float` | `getMax(FacetValueMap criteria)` Calculate the maximum of the data from a single metric.
    `java.lang.Float` | `getMax(java.lang.String criteria)` Calculate the maximum of the data from a single metric.
    `int` | `getMaxBarThickness()` Bars will not be drawn over this thickness, instead, margins will be increased.
    `double` | `getMaxDataPointSize()` The maximum allowed data point size when controlled by `pointSizeMetric`.
    `java.lang.Integer` | `getMaxDataZIndex()` Maximum allowed zIndex that can be specified through `zIndexMetric` in a histogram chart.
    `java.lang.Float` | `getMean(FacetValueMap criteria)` Calculate the mean, or expected value, of the data over a single metric.
    `java.lang.Float` | `getMean(java.lang.String criteria)` Calculate the mean, or expected value, of the data over a single metric.
    `java.lang.Float` | `getMedian(FacetValueMap criteria)` Calculate the median of the data over a single metric.
    `java.lang.Float` | `getMedian(java.lang.String criteria)` Calculate the median of the data over a single metric.
    `java.lang.String` | `getMetricFacetId()` Specifies the "id" of the default metric facet value.
    `java.lang.Float` | `getMin(FacetValueMap criteria)` Calculate the minimum of the data from a single metric.
    `java.lang.Float` | `getMin(java.lang.String criteria)` Calculate the minimum of the data from a single metric.
    `int` | `getMinBarThickness()` If bars would be smaller than this size, margins are reduced until bars overlap.
    `double` | `getMinDataPointSize()` The minimum allowed data point size when controlled by `pointSizeMetric`.
    `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.
    `java.lang.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`.
    `int` | `getMinorTickLength()` Length of minor ticks marks shown along axis, if `minor tick marks` are enabled.
    `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.
    `DrawnValue` | `getNearestDrawnValue()` Returns rendering information for the data value that is shown nearest to the passed coordinates, as a `DrawnValue` object.
    `DrawnValue` | `getNearestDrawnValue(java.lang.Integer x)`
    `DrawnValue` | `getNearestDrawnValue(java.lang.Integer x, java.lang.Integer y)`
    `DrawnValue` | `getNearestDrawnValue(java.lang.Integer x, java.lang.Integer y, java.lang.String metric)` Returns rendering information for the data value that is shown nearest to the passed coordinates, as a `DrawnValue` object.
    `DrawnValue[]` | `getNearestDrawnValues()` Returns an array of `DrawnValue` objects containing rendering information for the data values having each metric that are shown nearest to the passed coordinates.
    `DrawnValue[]` | `getNearestDrawnValues(java.lang.Integer x)`
    `DrawnValue[]` | `getNearestDrawnValues(java.lang.Integer x, java.lang.Integer y)` Returns an array of `DrawnValue` objects containing rendering information for the data values having each metric that are shown nearest to the passed coordinates.
    `java.lang.Integer` | `getNumDataPoints()` Count the number of data points.
    `java.lang.Integer` | `getNumDataPoints(FacetValueMap criteria)` Count the number of data points.
    `static FacetChart` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `float[]` | `getOtherAxisGradationGaps()` Like `gradationGaps`, except allows control of gradations for the X (horizontal) axis, for Scatter charts only.
    `java.lang.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.
    `java.lang.Integer` | `getOtherAxisPixelsPerGradation()` Ideal number of pixels to leave between each gradation on the x (horizontal axis), for Scatter plots only.
    `boolean` | `getPadChartRectByCornerRadius()` If `showChartRect` is enabled and if `chartRectProperties` specifies a nonzero `rounding`, whether the padding around the inside of the chart rect.
    `java.lang.Float` | `getPercentile(FacetValueMap criteria, float percentile)` Calculate a percentile of the data over a single metric.
    `java.lang.Float` | `getPercentile(java.lang.String criteria, float percentile)` Calculate a percentile of the data over a single metric.
    `DrawOval` | `getPieBorderProperties()` Properties for the border around a pie chart.
    `int` | `getPieLabelAngleStart()` Angle where first label is placed in a Pie chart in stacked mode, in degrees.
    `int` | `getPieLabelLineExtent()` How far label lines stick out of the pie radius in a Pie chart in stacked mode.
    `DrawLine` | `getPieLabelLineProperties()` Properties for pie label line
    `DrawOval` | `getPieRingBorderProperties()` Properties for pie ring border
    `DrawSector` | `getPieSliceProperties()` Properties for pie slices
    `java.lang.Integer` | `getPieStartAngle()` Default angle in degrees where pie charts start drawing sectors to represent data values.
    `int` | `getPixelsPerGradation()` Ideal number of pixels to leave between each gradation on the primary axis, which is typically the y (vertical) axis except for Bar charts.
    `java.lang.Integer` | `getPointColorLogBase()` When `logScalePointColor` is `true`, this property specifies the base value for logarithmic `color scale metric` values.
    `PointShape[]` | `getPointShapes()` For charts where `showDataPoints` is enabled, this property specifies an array of geometric shapes to draw for the data points of each series.
    `java.lang.Integer` | `getPointSizeGradations()` When a `point size legend` is shown, this property controls the number of gradations of the `pointSizeMetric` that the chart tries to display.
    `java.lang.Integer` | `getPointSizeLogBase()` When `logScalePointSize` is true, base value for logarithmic point size metric values.
    `float[]` | `getPointSizeLogGradations()` When `usePointSizeLogGradations` is set, this property specifies the `pointSizeMetric` value gradations to show in the `point size legend` in between powers, expressed as a series of integer or float values between 1 and `pointSizeLogBase`.
    `java.lang.String` | `getPointSizeMetric()` For charts where `showDataPoints` is enabled, this property specifies an additional metric (i.e.
    `void` | `getPolynomialRegressionFunction()` For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the polynomial that best fits the data.
    `void` | `getPolynomialRegressionFunction(java.lang.Integer degree)`
    `void` | `getPolynomialRegressionFunction(java.lang.Integer degree, java.lang.String xMetric)`
    `void` | `getPolynomialRegressionFunction(java.lang.Integer degree, java.lang.String xMetric, java.lang.String yMetric)` For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the polynomial that best fits the data.
    `java.lang.String` | `getPrintHTML(PrintProperties printProperties, PrintHTMLCallback callback)` Retrieves printable HTML for this component and all printable subcomponents.
    `boolean` | `getPrintZoomChart()` Should the `zoom chart` be printed with this `FacetChart`? If `true`, then the SVG string returned by `DrawPane.getSvgString()` will include the zoom chart's SVG as well.
    `java.lang.String` | `getProbabilityMetric()` The "id" of the metric facet value that assigns a probability to each combination of facets and their values.
    `java.lang.Boolean` | `getProportional()` For multi-facet charts, render data values as a proportion of the sum of all data values that have the same label.
    `java.lang.String` | `getProportionalAxisLabel()` Default title for the value axis label when the chart is in `proportional rendering mode`.
    `DrawOval` | `getRadarBackgroundProperties()` Properties for radar background
    `LabelRotationMode` | `getRadarRotateLabels()` This property controls whether to rotate the labels on the `data label facet` of radar or `stacked` pie charts so that each label is parallel to its radial gradation (these are the labels that appear around the perimeter).
    `java.lang.Integer` | `getRadialLabelOffset()` Distance in pixels that radial labels are offset from the outside of the circle.
    `java.lang.Float` | `getRange(FacetValueMap criteria)` Calculate the range of the data from a single metric.
    `java.lang.Float` | `getRange(java.lang.String criteria)` Calculate the range of the data from a single metric.
    `Record[]` | `getRecords()`
    `DrawLine` | `getRegressionLineProperties()` Properties for the `regression line`.
    `RegressionLineType` | `getRegressionLineType()` Regression algorithm used for the `regression line`.
    `int` | `getRegressionPolynomialDegree()` For scatter plots only, specify the degree of polynomial to use for any polynomial regression that is calculated.
    `LabelRotationMode` | `getRotateLabels()` This property controls whether to rotate the labels on the X-axis.
    `java.lang.String` | `getScaleEndColor()` The ending color of the color scale when the data points are colored according to a `color scale metric`.
    `java.lang.String` | `getScaleStartColor()` The starting color of the color scale when the data points are colored according to a `color scale metric`.
    `DrawOval` | `getShadowProperties()` Properties for shadows.
    `boolean` | `getShowBubbleLegendPerShape()` Whether to draw multiple bubble legends horizontally stacked to the right of the chart, one per shape type.
    `java.lang.Boolean` | `getShowChartRect()` Whether to show a rectangular shape around the area of the chart where data is plotted.
    `java.lang.Boolean` | `getShowColorScaleLegend()` Whether to show an additional legend underneath the chart to indicate color values.
    `java.lang.Boolean` | `getShowDataAxisLabel()` Whether to show a label for the data axis as a whole (the data axis is where labels for each data point appear).
    `boolean` | `getShowDataLabels()` If set to `false`, data labels for values are entirely omitted.
    `java.lang.Boolean` | `getShowDataPoints()` For Line, Area, Radar, Scatter or Bubble charts, whether to show data points for each individual data value.
    `boolean` | `getShowDataValues()` Should data values be shown as text labels near the shape representing the value, for example, above columns of a column chart, or adjacent to points in a line chart?
    `java.lang.Boolean` | `getShowDoughnut()` Whether to show a "doughnut hole" in the middle of pie charts.
    `java.lang.Boolean` | `getShowExpectedValueLine()` Display a line at the `mean value`.
    `java.lang.Boolean` | `getShowGradationsOverData()` If set, gradation lines are drawn on top of data rather than underneath.
    `java.lang.Boolean` | `getShowInlineLabels()` Causes labels for the X axis to be shown above the axis and to the right of the gradation line they label, making for a vertically more compact chart at the risk of gradation labels being partially obscured by data values.
    `java.lang.Boolean` | `getShowLegend()` The legend is automatically shown for charts that need it (generally, multi-series charts) but can be forced off by setting showLegend to false.
    `boolean` | `getShowMinorTicks()` If `ticks` are being shown, controls whether a distinction is made between major and minor tick marks.
    `java.lang.Boolean` | `getShowPointSizeLegend()` Whether to show an additional legend to the right of the chart to indicate `point size`.
    `java.lang.Boolean` | `getShowRadarGradationLabels()` Whether to show gradation labels in radar charts.
    `java.lang.Boolean` | `getShowRegressionLine()` For scatter plots only, whether to display a regression curve that best fits the data of the two metric facet values.
    `java.lang.Boolean` | `getShowScatterLines()` Whether to draw lines between adjacent data points in "Scatter" plots.
    `java.lang.Boolean` | `getShowShadows()` Whether to automatically show shadows for various charts.
    `java.lang.Boolean` | `getShowStandardDeviationLines()` Display multiple `standard deviations` away from the mean as lines.
    `java.lang.Boolean` | `getShowStatisticsOverData()` If set, the `mean line`, `standard deviation lines`, `standard deviation bands`, and `regression curves` are drawn on top of the data rather than underneath.
    `java.lang.Boolean` | `getShowTitle()` Whether to show a title.
    `java.lang.Boolean` | `getShowValueAxisLabel()` Whether to show the `valueTitle` (or, in the case of `proportional rendering mode`, the `proportionalAxisLabel`) as a label on the value axis.
    `java.lang.Boolean` | `getShowValueOnHover()` Shows the value of the nearest data value in a floating label whenever the mouse moves within the main chart area.
    `boolean` | `getShowXTicks()` When set, ticks are shown for the X (horizontal) axis for Scatter plots or Bar charts.
    `boolean` | `getShowYTicks()` When set, ticks are shown for the Y (vertical) axis if it's a value axis.
    `void` | `getSimpleLinearRegressionFunction()` For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the line that best fits the data.
    `void` | `getSimpleLinearRegressionFunction(java.lang.String xMetric)`
    `void` | `getSimpleLinearRegressionFunction(java.lang.String xMetric, java.lang.String yMetric)` For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the line that best fits the data.
    `java.lang.Boolean` | `getStacked()` Whether to use stacking for charts where this makes sense (column, area, pie, line and radar charts).
    `DrawItem` | `getStandardDeviationLineProperties()` Properties for the `standard deviation lines`.
    `float[]` | `getStandardDeviations()` When `showStandardDeviationLines` is set, the number of standard deviation lines drawn and their respective standard deviation away from the mean are specified by this property.
    `java.lang.Float` | `getStdDev(FacetValueMap criteria, boolean population)` Calculate the standard deviation of the data from a single metric.
    `java.lang.Float` | `getStdDev(java.lang.String criteria, boolean population)` Calculate the standard deviation of the data from a single metric.
    `java.lang.String` | `getStyleName()` Default styleName for the chart.
    `int` | `getTickLength()` Length of the tick marks used when either `showXTicks` or `showYTicks` is enabled, or when `extra value axes` are in use.
    `int` | `getTickMarkToValueAxisMargin()` Margin between the tick marks and the labels of the `extra value axes`.
    `java.lang.String` | `getTitle()` Title for the chart as a whole.
    `TitleAlign` | `getTitleAlign()` Horizontal alignment of the chart's `title`.
    `DrawLabel` | `getTitleBackgroundProperties()` Properties for title background (if being drawn).
    `DrawLine` | `getTitleBoundaryProperties()` Properties for bottom boundary of the title area, when there is already an outer container around the whole chart.
    `java.lang.Boolean` | `getTitlePadding()` if aligning the title left or right, the amount of space before (for left aligned) or after (for right aligned) to pad the title from the border edge
    `DrawLabel` | `getTitleProperties()` Properties for title label.
    `int` | `getTitleRectHeight()` The height of the bordered rect around the title - defaults to 0 (assuming no border)
    `java.lang.Boolean` | `getUseAutoGradients()` Causes the chart to use the colors specified in `dataColors` but specify chart-specific gradients based on the primary data color per chart type.
    `java.lang.Boolean` | `getUseLogGradations()` Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening lines.
    `java.lang.Boolean` | `getUseMultiplePointShapes()` Whether the chart should use multiple shapes to show data points.
    `java.lang.Boolean` | `getUsePointSizeLogGradations()` Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening values, for the `pointSizeMetric` values displayed in the `point size legend`.
    `java.lang.Boolean` | `getUseSymmetricStandardDeviations()` Whether to display both the positive and negative of the `standard deviations`.
    `DrawLabel` | `getValueAxisLabelProperties()` Properties for labels of value axis.
    `int` | `getValueAxisMargin()` Margin between `multiple value axes`.
    `DrawLine` | `getValueLineProperties()` Properties for a "value line" - a line shows where a particular discrete value is placed, eg, vertical lines connecting points of a line chart to the X axis, or radial lines in a Radar chart.
    `java.lang.String` | `getValueProperty()` Property in each record that holds a data value.
    `java.lang.String` | `getValueTitle()` A label for the data values, such as "Sales in Thousands", typically used as the label for the value axis.
    `java.lang.Float` | `getVariance(FacetValueMap criteria, boolean population)` Calculate the variance of the data from a single metric.
    `java.lang.Float` | `getVariance(java.lang.String criteria, boolean population)` Calculate the variance of the data from a single metric.
    `java.lang.Double` | `getXAxisEndValue()` For Bubble and Scatter charts only, the end value for the x-axis.
    `java.util.Date` | `getXAxisEndValueAsDate()` For Bubble and Scatter charts only, the end value for the x-axis.
    `java.lang.String` | `getXAxisMetric()` For scatter charts only, the "id" of the metric facet value to use for the x-axis.
    `java.lang.Double` | `getXAxisStartValue()` For Bubble and Scatter charts only, the start value for the x-axis.
    `java.util.Date` | `getXAxisStartValueAsDate()` For Bubble and Scatter charts only, the start value for the x-axis.
    `float` | `getXCoord(double value)` Returns the X coordinate where the passed data value either was or would be drawn.
    `float` | `getXCoord(FacetValueMap value)` Returns the X coordinate where the passed data value either was or would be drawn.
    `int` | `getYAxisLabelPadding()` Padding between each swatch and label pair.
    `java.lang.String` | `getYAxisMetric()` For scatter charts only, the "id" of the metric facet value to use for the y-axis.
    `float` | `getYCoord(double value)` Returns the Y coordinate where the passed data value either was or would be drawn.
    `float` | `getYCoord(FacetValueMap value)` Returns the Y coordinate where the passed data value either was or would be drawn.
    `java.lang.String` | `getZIndexMetric()` Specifies the attribute in the metric facet that will define the z-ordering of the segments in a histogram chart.
    `FacetChart` | `getZoomChart()` Mini-chart created to allow zooming when `canZoom` is enabled.
    `double` | `getZoomChartHeight()` Height of the `zoomChart`.
    `FacetChart` | `getZoomChartProperties()` Properties to further configure the `zoomChart`.
    `RangeSlider` | `getZoomChartSlider()` Slider controls shown on the mini-chart which is created when `canZoom` is enabled.
    `java.lang.Object` | `getZoomEndValue()` For a `zoomed chart`, end value of the data range shown in the main chart.
    `java.lang.Boolean` | `getZoomLogScale()` By default when `canZoom` is enabled, the `zoomChart` uses logarithmic scaling so that spikes in the data don't result in a zoomed chart that is mostly a flat line.
    `float` | `getZoomMutePercent()` `colorMutePercent` to use for the `zoomChart`.
    `FacetChart` | `getZoomSelectionChart()` Mini-chart created when `canZoom` is enabled.
    `FacetChart` | `getZoomSelectionChartProperties()` Properties to further configure the `zoomSelectionChart`.
    `java.lang.Boolean` | `getZoomShowSelection()` Whether the selected range should be shown in a different style, which can be configured via `zoomSelectionChartProperties`.
    `ZoomStartPosition` | `getZoomStartPosition()` For a `zoomed chart`, determines what portion of the overall dataset should be initially shown in the main chart.
    `java.lang.Object` | `getZoomStartValue()` For a `zoomed chart`, start value of the data range shown in the main chart.
    `void` | `setAllowBubbleGradients(boolean allowBubbleGradients)` Setting this flag to `false` prevents the chart from drawing fill gradients into the bubbles of each data point.
    `void` | `setAllowedChartTypes(ChartType... allowedChartTypes)` Other `chart types` that the end user will be allowed to switch to, using the built-in context menu.
    `void` | `setAutoRotateLabels(java.lang.Boolean autoRotateLabels)` 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`.
    `void` | `setAutoScrollData(boolean autoScrollData)` For a column, histogram, line, or area chart that has `facet values displayed along the x-axis`, should the chart be expanded automatically 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 thicknesses` or the margins between them.
    `void` | `setAutoScrollDataApproach(AutoScrollDataApproach autoScrollDataApproach)` If set, overrides the default behavior of `autoScrollData`, potentially limiting what factors drive the automatic horizontal expansion of the chart.
    `void` | `setAutoSortBubblePoints(boolean autoSortBubblePoints)` 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.
    `void` | `setAxisEndValue(java.lang.Double axisEndValue)` End value for the primary axis of the chart.
    `void` | `setAxisStartValue(java.lang.Double axisStartValue)` Start value for the primary axis of the chart.
    `void` | `setAxisValueFormatter(ValueFormatter formatter)` Formatter to apply to values displayed in the gradation labels.
    `void` | `setBackgroundBandProperties(DrawRect backgroundBandProperties)` Properties for background band
    `void` | `setBandedBackground(java.lang.Boolean bandedBackground)` Whether to show alternating color bands in the background of chart.
    `void` | `setBandedStandardDeviations(java.lang.Boolean bandedStandardDeviations)` Whether to show color bands between the `standard deviation` lines.
    `void` | `setBarMargin(int barMargin)` Distance between bars.
    `void` | `setBarProperties(DrawRect barProperties)` Properties for bar
    `void` | `setBrightenAllOnHover(java.lang.Boolean brightenAllOnHover)` When hovering over a bar chart block, should the whole bar chart area be brightened Default behaviour is to just brighten the line color around the bar chart area
    `void` | `setBubbleHoverMaxDistance(int bubbleHoverMaxDistance)` Maximum distance from the *outer radius* of the nearest bubble when hover will be shown.
    `void` | `setBubbleProperties(DrawItem bubbleProperties)` Properties for the shapes displayed around the data points (for example, in a bubble chart).
    `void` | `setCanMoveAxes(java.lang.Boolean canMoveAxes)` Whether the positions of value axes can be changed.
    `void` | `setCanZoom(java.lang.Boolean canZoom)` 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.
    `void` | `setCenterLegend(java.lang.Boolean centerLegend)` Whether to place the `chart legend` with respect to the full, scrollable width of the chart when `autoScrollData` is active.
    `void` | `setCenterTitle(java.lang.Boolean centerTitle)` Whether to place the `chart title` with respect to the full, scrollable width of the chart when `autoScrollData` is active.
    `void` | `setChartRectMargin(int chartRectMargin)` Margin around the main chart rect: between title and chart, between chart and axis labels, and chart rect and right edge of chart.
    `void` | `setChartRectProperties(DrawRect chartRectProperties)` Properties for chart rect.
    `void` | `setChartType(ChartType chartType)` See `ChartType` for a list of known types - Column, Bar, Line, Pie, Doughnut, Area, Radar, and Histogram charts are supported.
    `void` | `setClusterMarginRatio(float clusterMarginRatio)` For clustered charts, ratio between margins between individual bars and margins between clusters.
    `void` | `setColorMutePercent(java.lang.Float colorMutePercent)` Should be set to a number between -100 and 100.
    `void` | `setColorScaleMetric(java.lang.String colorScaleMetric)` For charts where `showDataPoints` is enabled, this property specifies an additional metric (i.e.
    `void` | `setData(Record[] records)` Dataset for this chart.
    `void` | `setData(RecordList records)`
    `void` | `setDataAxisLabelProperties(DrawLabel dataAxisLabelProperties)` Properties for labels of data axis.
    `void` | `setDataColorMapper(ColorMapper colorMapper)` Sets a customizer to redefine what colors are used when rendering the chart data.
    `void` | `setDataColors(java.lang.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.
    `void` | `setDataGradientMapper(GradientMapper gradientMapper)` Sets a customizer to redefine what gradients are used when rendering the chart data.
    `void` | `setDataLabelHoverHTMLCustomizer(DataLabelHoverCustomizer dataLabelHoverHTMLCustomizer)` Called when the mouse hovers over a data label, that is, a text label showing values from the first facet.
    `void` | `setDataLabelProperties(DrawLabel dataLabelProperties)` Properties for data label
    `void` | `setDataLineColorMapper(ColorMapper colorMapper)` Sets a customizer to redefine what colors are used when rendering lines for the chart data.
    `void` | `setDataLineProperties(DrawLine dataLineProperties)` Properties for lines that show data (as opposed to gradations or borders around the data area).
    `void` | `setDataLineType(DataLineType dataLineType)` How to draw lines between adjacent data points in Line and Scatter charts.
    `void` | `setDataLineWidthMapper(LineWidthMapper lineWidthMapper)` Sets a customizer to define what widths to use for data lines in the chart.
    `void` | `setDataMargin(int dataMargin)` For rectangular charts (bar, column, line), margin around the inside of the main chart area, so that data elements are not flush to edge.
    `void` | `setDataOutlineProperties(DrawItem dataOutlineProperties)` Properties for lines that outline a data shape (in filled charts such as area or radar charts).
    `void` | `setDataPointProperties(DrawItem dataPointProperties)` Common properties to apply for all data points (see `showDataPoints`).
    `void` | `setDataPointSize(int dataPointSize)` Size in pixels for data points drawn for line, area, radar and other chart types.
    `void` | `setDataShapeProperties(DrawPath dataShapeProperties)` Properties for data shapes (filled areas in area or radar charts).
    `void` | `setDataValueFormatter(ValueFormatter formatter)` Formatter to apply to values displayed in the hover labels and other value labels
    `void` | `setDecimalPrecision(int decimalPrecision)` Default precision used when formatting float numbers for axis labels
    `static void` | `setDefaultProperties(FacetChart facetChartProperties)` Class level method to set the default properties of this class.
    `void` | `setDiscontinuousLines(java.lang.Boolean discontinuousLines)` Whether to treat non-numeric values in the dataset as indicating a break in the data line.
    `void` | `setDoughnutHoleProperties(DrawOval doughnutHoleProperties)` Properties for doughnut hole
    `void` | `setDoughnutRatio(float doughnutRatio)` 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.
    `void` | `setDrawLegendBoundary(java.lang.Boolean drawLegendBoundary)` Whether a boundary should be drawn above the Legend area for circumstances where the chart area already has an outer border.
    `void` | `setDrawTitleBackground(java.lang.Boolean drawTitleBackground)` should a background color be set behind the Title.
    `void` | `setDrawTitleBoundary(java.lang.Boolean drawTitleBoundary)` Whether a boundary should be drawn below the title area for circumstances where the chart area already has an outer border.
    `void` | `setEditProxyConstructor(java.lang.String editProxyConstructor)` Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
    `void` | `setEndValueMetric(java.lang.String endValueMetric)` Specifies the attribute in the metric facet that will define the end point of segments in a histogram chart.
    `void` | `setErrorBarColorMutePercent(float errorBarColorMutePercent)` This property helps specify the color of the error bars and its value must be a number between -100 and 100.
    `void` | `setErrorBarWidth(int errorBarWidth)` Width of the horizontal line of the "T"-shape portion of the error bar).
    `void` | `setErrorLineProperties(DrawLine errorLineProperties)` Properties of the lines used to draw error bars (short, horizontal lines at the low and high metric values, and a vertical connecting line).
    `void` | `setExpectedValueLineProperties(DrawItem expectedValueLineProperties)` Properties for the `line drawn at the mean value`.
    `void` | `setExtraAxisMetrics(java.lang.String... extraAxisMetrics)` Defines the set of metrics that will be plotted as additional vertical axes.
    `void` | `setExtraAxisSettings(MetricSettings... extraAxisSettings)` For charts will multiple vertical axes, optionally provides settings for how each `extra axis metric` is plotted.
    `void` | `setFacets(Facet... facets)` 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.
    `void` | `setFacets(Facet facets)` 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.
    `void` | `setFilled(java.lang.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.
    `void` | `setFormatStringFacetValueIds(java.lang.Boolean formatStringFacetValueIds)` Whether to call `setXAxisValueFormatter()` or `formatFacetValueId()` on a facet value id when the id is a string.
    `void` | `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.
    `void` | `setGradationLabelPadding(int gradationLabelPadding)` Padding from edge of Y the Axis Label.
    `void` | `setGradationLabelProperties(DrawLabel gradationLabelProperties)` Properties for gradation labels
    `void` | `setGradationLineProperties(DrawLine gradationLineProperties)` Properties for gradation lines
    `void` | `setGradationTickMarkLength(java.lang.Integer gradationTickMarkLength)` Deprecated. use `tickLength` instead
    `void` | `setGradationZeroLineProperties(DrawLine gradationZeroLineProperties)` Properties for the gradation line drawn for zero (slightly thicker by default).
    `void` | `setHighErrorMetric(java.lang.String highErrorMetric)` See `lowErrorMetric`.
    `void` | `setHoverLabelPadding(int hoverLabelPadding)` An extra amount of padding to show around the `hoverLabel` when `showValueOnHover` is enabled.
    `void` | `setHoverLabelProperties(DrawLabel hoverLabelProperties)` 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.
    `void` | `setHoverRectProperties(DrawRect hoverRectProperties)` Properties for rectangle that draws behind of a floating hover label that represents the data value.
    `void` | `setLabelCollapseMode(LabelCollapseMode labelCollapseMode)` 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`.
    `void` | `setLegendAlign(LegendAlign legendAlign)` Horizontal alignment of the chart's `legend widget`.
    `void` | `setLegendBoundaryProperties(DrawLine legendBoundaryProperties)` Properties for top boundary of the legend are, when there is already an outer container around the whole chart.
    `void` | `setLegendHoverCustomizer(LegendHoverCustomizer legendHoverHTMLCustomizer)` Called when the mouse hovers over a color swatch or its label in the legend area of the chart.
    `void` | `setLegendItemPadding(int legendItemPadding)` Padding between each swatch and label pair.
    `void` | `setLegendLabelProperties(DrawLabel legendLabelProperties)` Properties for labels shown next to legend color swatches.
    `void` | `setLegendMargin(int legendMargin)` Space between the legend and the chart rect or axis labels (whatever the legend is adjacent to.
    `void` | `setLegendPadding(int legendPadding)` Padding around the legend as a whole.
    `void` | `setLegendRectHeight(int legendRectHeight)` If drawing a border around the legend, the height of the drawn Rectangle.
    `void` | `setLegendRectProperties(DrawRect legendRectProperties)` Properties for rectangle around the legend as a whole.
    `void` | `setLegendSwatchProperties(DrawRect legendSwatchProperties)` Properties for the swatches of color shown in the legend.
    `void` | `setLegendSwatchSize(int legendSwatchSize)` Size of individual color swatches in legend.
    `void` | `setLegendTextPadding(int legendTextPadding)` Padding between color swatch and its label.
    `void` | `setLogBase(int logBase)` When `useLogGradations`, base value for logarithmic gradation lines.
    `void` | `setLogGradations(float... logGradations)` When `useLogGradations` is set, gradation lines to show in between powers, expressed as a series of integer or float values between 1 and `logBase`.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `setLogicalStructure(com.smartgwt.logicalstructure.widgets.chart.FacetChartLogicalStructure s)` Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `void` | `setLogScale(java.lang.Boolean logScale)` Whether to use logarithmic scaling for values.
    `void` | `setLogScalePointColor(boolean logScalePointColor)` Whether to use logarithmic scaling for the `color scale` of the data points.
    `void` | `setLogScalePointSize(boolean logScalePointSize)` Whether to use logarithmic scaling for the `data point sizes`.
    `void` | `setLowErrorMetric(java.lang.String lowErrorMetric)` `lowErrorMetric` and `highErrorMetric` can be used to cause error bars to appear above and below the main data point.
    `void` | `setMajorTickGradations(float... majorTickGradations)` 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).
    `void` | `setMajorTickTimeIntervals(java.lang.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.
    `void` | `setMatchBarChartDataLineColor(java.lang.Boolean matchBarChartDataLineColor)` Setting to define whether the border around the bar chart area should be the same color as the main chart area.
    `void` | `setMaxBarThickness(int maxBarThickness)` Bars will not be drawn over this thickness, instead, margins will be increased.
    `void` | `setMaxDataPointSize(double maxDataPointSize)` The maximum allowed data point size when controlled by `pointSizeMetric`.
    `void` | `setMaxDataZIndex(java.lang.Integer maxDataZIndex)` Maximum allowed zIndex that can be specified through `zIndexMetric` in a histogram chart.
    `void` | `setMetricFacetId(java.lang.String metricFacetId)` Specifies the "id" of the default metric facet value.
    `void` | `setMinBarThickness(int minBarThickness)` If bars would be smaller than this size, margins are reduced until bars overlap.
    `void` | `setMinClusterSizeMapper(ClusterSizeMapper clusterSizeMapper)` Sets a customizer to define the minimum cluster size (for clustered charts), or minimum bar thickness (for histogram or stacked charts) for the specified `data label facet` value.
    `void` | `setMinDataPointSize(double minDataPointSize)` The minimum allowed data point size when controlled by `pointSizeMetric`.
    `void` | `setMinDataSpreadPercent(int minDataSpreadPercent)` 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.
    `void` | `setMinLabelGap(java.lang.Integer minLabelGap)` 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`.
    `void` | `setMinorTickLength(int minorTickLength)` Length of minor ticks marks shown along axis, if `minor tick marks` are enabled.
    `void` | `setMinXDataSpreadPercent(int minXDataSpreadPercent)` 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.
    `void` | `setOtherAxisGradationGaps(float... otherAxisGradationGaps)` Like `gradationGaps`, except allows control of gradations for the X (horizontal) axis, for Scatter charts only.
    `void` | `setOtherAxisGradationTimes(java.lang.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.
    `void` | `setOtherAxisPixelsPerGradation(java.lang.Integer otherAxisPixelsPerGradation)` Ideal number of pixels to leave between each gradation on the x (horizontal axis), for Scatter plots only.
    `void` | `setPadChartRectByCornerRadius(boolean padChartRectByCornerRadius)` If `showChartRect` is enabled and if `chartRectProperties` specifies a nonzero `rounding`, whether the padding around the inside of the chart rect.
    `void` | `setPieBorderProperties(DrawOval pieBorderProperties)` Properties for the border around a pie chart.
    `void` | `setPieLabelAngleStart(int pieLabelAngleStart)` Angle where first label is placed in a Pie chart in stacked mode, in degrees.
    `void` | `setPieLabelLineExtent(int pieLabelLineExtent)` How far label lines stick out of the pie radius in a Pie chart in stacked mode.
    `void` | `setPieLabelLineProperties(DrawLine pieLabelLineProperties)` Properties for pie label line
    `void` | `setPieRingBorderProperties(DrawOval pieRingBorderProperties)` Properties for pie ring border
    `void` | `setPieSliceProperties(DrawSector pieSliceProperties)` Properties for pie slices
    `void` | `setPieStartAngle(java.lang.Integer pieStartAngle)` Default angle in degrees where pie charts start drawing sectors to represent data values.
    `void` | `setPixelsPerGradation(int pixelsPerGradation)` Ideal number of pixels to leave between each gradation on the primary axis, which is typically the y (vertical) axis except for Bar charts.
    `void` | `setPointClickHandler(ChartPointClickHandler handler)` Apply a handler to fire when `showDataPoints` is true, and the user clicks on a point.
    `void` | `setPointColorLogBase(java.lang.Integer pointColorLogBase)` When `logScalePointColor` is `true`, this property specifies the base value for logarithmic `color scale metric` values.
    `void` | `setPointHoverCustomizer(ChartPointHoverCustomizer hoverCustomizer)` Display custom HTML when `showDataPoints` is true and the mouse hovers over a point.
    `void` | `setPointShapes(PointShape... pointShapes)` For charts where `showDataPoints` is enabled, this property specifies an array of geometric shapes to draw for the data points of each series.
    `void` | `setPointSizeGradations(java.lang.Integer pointSizeGradations)` When a `point size legend` is shown, this property controls the number of gradations of the `pointSizeMetric` that the chart tries to display.
    `void` | `setPointSizeLogBase(java.lang.Integer pointSizeLogBase)` When `logScalePointSize` is true, base value for logarithmic point size metric values.
    `void` | `setPointSizeLogGradations(float... pointSizeLogGradations)` When `usePointSizeLogGradations` is set, this property specifies the `pointSizeMetric` value gradations to show in the `point size legend` in between powers, expressed as a series of integer or float values between 1 and `pointSizeLogBase`.
    `void` | `setPointSizeMetric(java.lang.String pointSizeMetric)` For charts where `showDataPoints` is enabled, this property specifies an additional metric (i.e.
    `void` | `setPrintZoomChart(boolean printZoomChart)` Should the `zoom chart` be printed with this `FacetChart`? If `true`, then the SVG string returned by `DrawPane.getSvgString()` will include the zoom chart's SVG as well.
    `void` | `setProbabilityMetric(java.lang.String probabilityMetric)` The "id" of the metric facet value that assigns a probability to each combination of facets and their values.
    `void` | `setProportional(java.lang.Boolean proportional)` For multi-facet charts, render data values as a proportion of the sum of all data values that have the same label.
    `void` | `setProportionalAxisLabel(java.lang.String proportionalAxisLabel)` Default title for the value axis label when the chart is in `proportional rendering mode`.
    `void` | `setRadarBackgroundProperties(DrawOval radarBackgroundProperties)` Properties for radar background
    `void` | `setRadarRotateLabels(LabelRotationMode radarRotateLabels)` This property controls whether to rotate the labels on the `data label facet` of radar or `stacked` pie charts so that each label is parallel to its radial gradation (these are the labels that appear around the perimeter).
    `void` | `setRadialLabelOffset(java.lang.Integer radialLabelOffset)` Distance in pixels that radial labels are offset from the outside of the circle.
    `void` | `setRegressionLineProperties(DrawLine regressionLineProperties)` Properties for the `regression line`.
    `void` | `setRegressionLineType(RegressionLineType regressionLineType)` Regression algorithm used for the `regression line`.
    `void` | `setRegressionPolynomialDegree(int regressionPolynomialDegree)` For scatter plots only, specify the degree of polynomial to use for any polynomial regression that is calculated.
    `void` | `setRotateLabels(LabelRotationMode rotateLabels)` This property controls whether to rotate the labels on the X-axis.
    `void` | `setScaleEndColor(java.lang.String scaleEndColor)` The ending color of the color scale when the data points are colored according to a `color scale metric`.
    `void` | `setScaleStartColor(java.lang.String scaleStartColor)` The starting color of the color scale when the data points are colored according to a `color scale metric`.
    `void` | `setShadowProperties(DrawOval shadowProperties)` Properties for shadows.
    `void` | `setShowBubbleLegendPerShape(boolean showBubbleLegendPerShape)` Whether to draw multiple bubble legends horizontally stacked to the right of the chart, one per shape type.
    `void` | `setShowChartRect(java.lang.Boolean showChartRect)` Whether to show a rectangular shape around the area of the chart where data is plotted.
    `void` | `setShowColorScaleLegend(java.lang.Boolean showColorScaleLegend)` Whether to show an additional legend underneath the chart to indicate color values.
    `void` | `setShowDataAxisLabel(java.lang.Boolean showDataAxisLabel)` Whether to show a label for the data axis as a whole (the data axis is where labels for each data point appear).
    `void` | `setShowDataLabels(boolean showDataLabels)` If set to `false`, data labels for values are entirely omitted.
    `void` | `setShowDataPoints(java.lang.Boolean showDataPoints)` For Line, Area, Radar, Scatter or Bubble charts, whether to show data points for each individual data value.
    `void` | `setShowDataValues(boolean showDataValues)` Should data values be shown as text labels near the shape representing the value, for example, above columns of a column chart, or adjacent to points in a line chart?
    `void` | `setShowDoughnut(java.lang.Boolean showDoughnut)` Whether to show a "doughnut hole" in the middle of pie charts.
    `void` | `setShowExpectedValueLine(java.lang.Boolean showExpectedValueLine)` Display a line at the `mean value`.
    `void` | `setShowGradationsOverData(java.lang.Boolean showGradationsOverData)` If set, gradation lines are drawn on top of data rather than underneath.
    `void` | `setShowInlineLabels(java.lang.Boolean showInlineLabels)` Causes labels for the X axis to be shown above the axis and to the right of the gradation line they label, making for a vertically more compact chart at the risk of gradation labels being partially obscured by data values.
    `void` | `setShowLegend(java.lang.Boolean showLegend)` The legend is automatically shown for charts that need it (generally, multi-series charts) but can be forced off by setting showLegend to false.
    `void` | `setShowMinorTicks(boolean showMinorTicks)` If `ticks` are being shown, controls whether a distinction is made between major and minor tick marks.
    `void` | `setShowPointSizeLegend(java.lang.Boolean showPointSizeLegend)` Whether to show an additional legend to the right of the chart to indicate `point size`.
    `void` | `setShowRadarGradationLabels(java.lang.Boolean showRadarGradationLabels)` Whether to show gradation labels in radar charts.
    `void` | `setShowRegressionLine(java.lang.Boolean showRegressionLine)` For scatter plots only, whether to display a regression curve that best fits the data of the two metric facet values.
    `void` | `setShowScatterLines(java.lang.Boolean showScatterLines)` Whether to draw lines between adjacent data points in "Scatter" plots.
    `void` | `setShowShadows(java.lang.Boolean showShadows)` Whether to automatically show shadows for various charts.
    `void` | `setShowStandardDeviationLines(java.lang.Boolean showStandardDeviationLines)` Display multiple `standard deviations` away from the mean as lines.
    `void` | `setShowStatisticsOverData(java.lang.Boolean showStatisticsOverData)` If set, the `mean line`, `standard deviation lines`, `standard deviation bands`, and `regression curves` are drawn on top of the data rather than underneath.
    `void` | `setShowTitle(java.lang.Boolean showTitle)` Whether to show a title.
    `void` | `setShowValueAxisLabel(java.lang.Boolean showValueAxisLabel)` Whether to show the `valueTitle` (or, in the case of `proportional rendering mode`, the `proportionalAxisLabel`) as a label on the value axis.
    `void` | `setShowValueOnHover(java.lang.Boolean showValueOnHover)` Shows the value of the nearest data value in a floating label whenever the mouse moves within the main chart area.
    `void` | `setShowXTicks(boolean showXTicks)` When set, ticks are shown for the X (horizontal) axis for Scatter plots or Bar charts.
    `void` | `setShowYTicks(boolean showYTicks)` When set, ticks are shown for the Y (vertical) axis if it's a value axis.
    `void` | `setStacked(java.lang.Boolean stacked)` Whether to use stacking for charts where this makes sense (column, area, pie, line and radar charts).
    `void` | `setStandardDeviationBandProperties(DrawItem... standardDeviationBandProperties)` An Array of DrawRect properties to specify the bands between the `standard deviation lines`.
    `void` | `setStandardDeviationLineProperties(DrawItem standardDeviationLineProperties)` Properties for the `standard deviation lines`.
    `void` | `setStandardDeviations(float... standardDeviations)` When `showStandardDeviationLines` is set, the number of standard deviation lines drawn and their respective standard deviation away from the mean are specified by this property.
    `void` | `setStyleName(java.lang.String styleName)` Default styleName for the chart.
    `void` | `setTickLength(int tickLength)` Length of the tick marks used when either `showXTicks` or `showYTicks` is enabled, or when `extra value axes` are in use.
    `void` | `setTickMarkToValueAxisMargin(int tickMarkToValueAxisMargin)` Margin between the tick marks and the labels of the `extra value axes`.
    `void` | `setTitle(java.lang.String title)` Title for the chart as a whole.
    `void` | `setTitleAlign(TitleAlign titleAlign)` Horizontal alignment of the chart's `title`.
    `void` | `setTitleBackgroundProperties(DrawLabel titleBackgroundProperties)` Properties for title background (if being drawn).
    `void` | `setTitleBoundaryProperties(DrawLine titleBoundaryProperties)` Properties for bottom boundary of the title area, when there is already an outer container around the whole chart.
    `void` | `setTitlePadding(java.lang.Boolean titlePadding)` if aligning the title left or right, the amount of space before (for left aligned) or after (for right aligned) to pad the title from the border edge
    `void` | `setTitleProperties(DrawLabel titleProperties)` Properties for title label.
    `void` | `setTitleRectHeight(int titleRectHeight)` The height of the bordered rect around the title - defaults to 0 (assuming no border)
    `void` | `setUseAutoGradients(java.lang.Boolean useAutoGradients)` Causes the chart to use the colors specified in `dataColors` but specify chart-specific gradients based on the primary data color per chart type.
    `void` | `setUseLogGradations(java.lang.Boolean useLogGradations)` Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening lines.
    `void` | `setUseMultiplePointShapes(java.lang.Boolean useMultiplePointShapes)` Whether the chart should use multiple shapes to show data points.
    `void` | `setUsePointSizeLogGradations(java.lang.Boolean usePointSizeLogGradations)` Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening values, for the `pointSizeMetric` values displayed in the `point size legend`.
    `void` | `setUseSymmetricStandardDeviations(java.lang.Boolean useSymmetricStandardDeviations)` Whether to display both the positive and negative of the `standard deviations`.
    `void` | `setValueAxisLabelProperties(DrawLabel valueAxisLabelProperties)` Properties for labels of value axis.
    `void` | `setValueAxisMargin(int valueAxisMargin)` Margin between `multiple value axes`.
    `void` | `setValueLineProperties(DrawLine valueLineProperties)` Properties for a "value line" - a line shows where a particular discrete value is placed, eg, vertical lines connecting points of a line chart to the X axis, or radial lines in a Radar chart.
    `void` | `setValueProperty(java.lang.String valueProperty)` Property in each record that holds a data value.
    `void` | `setValueTitle(java.lang.String valueTitle)` A label for the data values, such as "Sales in Thousands", typically used as the label for the value axis.
    `void` | `setXAxisEndValue(java.util.Date xAxisEndValue)` For Bubble and Scatter charts only, the end value for the x-axis.
    `void` | `setXAxisEndValue(java.lang.Double xAxisEndValue)` For Bubble and Scatter charts only, the end value for the x-axis.
    `void` | `setXAxisMetric(java.lang.String xAxisMetric)` For scatter charts only, the "id" of the metric facet value to use for the x-axis.
    `void` | `setXAxisStartValue(java.util.Date xAxisStartValue)` For Bubble and Scatter charts only, the start value for the x-axis.
    `void` | `setXAxisStartValue(java.lang.Double xAxisStartValue)` For Bubble and Scatter charts only, the start value for the x-axis.
    `void` | `setXAxisValueFormatter(ValueFormatter formatter)` Formatter to apply to values displayed in the gradation labels on the x-axis.
    `void` | `setYAxisLabelPadding(int yAxisLabelPadding)` Padding between each swatch and label pair.
    `void` | `setYAxisMetric(java.lang.String yAxisMetric)` For scatter charts only, the "id" of the metric facet value to use for the y-axis.
    `void` | `setYAxisValueFormatter(ValueFormatter formatter)` Formatter to apply to values displayed in the gradation labels on the y-axis.
    `void` | `setZIndexMetric(java.lang.String zIndexMetric)` Specifies the attribute in the metric facet that will define the z-ordering of the segments in a histogram chart.
    `void` | `setZoomChartHeight(double zoomChartHeight)` Height of the `zoomChart`.
    `void` | `setZoomChartProperties(FacetChart zoomChartProperties)` Properties to further configure the `zoomChart`.
    `void` | `setZoomEndValue(java.lang.Object zoomEndValue)` For a `zoomed chart`, end value of the data range shown in the main chart.
    `void` | `setZoomLogScale(java.lang.Boolean zoomLogScale)` By default when `canZoom` is enabled, the `zoomChart` uses logarithmic scaling so that spikes in the data don't result in a zoomed chart that is mostly a flat line.
    `void` | `setZoomMutePercent(float zoomMutePercent)` `colorMutePercent` to use for the `zoomChart`.
    `void` | `setZoomSelectionChartProperties(FacetChart zoomSelectionChartProperties)` Properties to further configure the `zoomSelectionChart`.
    `void` | `setZoomShowSelection(java.lang.Boolean zoomShowSelection)` Whether the selected range should be shown in a different style, which can be configured via `zoomSelectionChartProperties`.
    `void` | `setZoomStartPosition(ZoomStartPosition zoomStartPosition)` For a `zoomed chart`, determines what portion of the overall dataset should be initially shown in the main chart.
    `void` | `setZoomStartValue(java.lang.Object zoomStartValue)` For a `zoomed chart`, start value of the data range shown in the main chart.
    `void` | `zoomTo(java.lang.Object startValue, java.lang.Object endValue)` For a `zoomed chart`, simultaneously sets the `zoomStartValue` and `zoomEndValue`.

    - ### Methods inherited from class com.smartgwt.client.widgets.drawing.DrawPane

      `addDrawEndHandler, addDrawItem, addDrawStartHandler, addGradient, bezier, bezierExtrema, createLinearGradient, createRadialGradient, createSimpleGradient, destroyItems, erase, getBezierBoundingBox, getCanDragScroll, getDataURL, getDataURL, getDataURL, getDrawingHeight, getDrawingPoint, getDrawingType, getDrawingWidth, getDrawingX, getDrawingY, getDrawItems, getGradient, getGradients, getPolygonPoints, getRegularPolygonPoints, getRotation, getRotationAsDouble, getSvgString, getTranslate, getUnderlyingGWTCanvas, getZoomLevel, getZoomLevelAsDouble, refreshNow, removeGradient, rotate, scaleAndCenter, scaleAndCenterBezier, setAutoChildProperties, setCanDragScroll, setDefaultProperties, setDrawingHeight, setDrawingType, setDrawingWidth, setDrawItems, setGradients, setLogicalStructure, setRotation, setRotation, setTranslate, setZoomLevel, setZoomLevel, zoom, zoom`

    - ### Methods inherited from class com.smartgwt.client.widgets.Canvas

      `addChild, addChild, addChild, addChild, addChild, addClearHandler, addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragRepositionMoveHandler, addDragRepositionStartHandler, addDragRepositionStopHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDropHandler, addDropMoveHandler, addDropOutHandler, addDropOverHandler, addFocusChangedHandler, addHoverHandler, addHoverHiddenHandler, addKeyDownHandler, addKeyPressHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseStillDownHandler, addMouseUpHandler, addMouseWheelHandler, addMovedHandler, addParentMovedHandler, addPeer, addPeer, addPeer, addPeer, addResizedHandler, addRightMouseDownHandler, addRuleContextChangedHandler, addScrolledHandler, addShowContextMenuHandler, addSnapAlignCandidate, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clearExplicitTabIndex, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsFocus, containsPoint, containsPoint, deparent, depeer, disable, enable, encloses, focus, focusAfterGroup, focusAtEnd, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAdaptiveHeightPriority, getAdaptiveWidthPriority, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideEffect, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaRole, getAutoDraw, getAutoMaskComponents, getAutoParent, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanAdaptHeight, getCanAdaptWidth, getCanDrag, getCanDragReposition, getCanDragResize, getCanDrop, getCanDropBefore, getCanFocus, getCanHover, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenResizeSnapAlign, getChildrenSnapAlign, getChildrenSnapCenterAlign, getChildrenSnapEdgeAlign, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getChildTabPosition, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContents, getContextMenu, getCorrectZoomOverflow, getCursor, getDataPath, getDefaultHeight, getDefaultWidth, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragMaxHeight, getDragMaxWidth, getDragMinHeight, getDragMinWidth, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragType, getDropTypes, getDropTypesAsString, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getElement, getElement, getEnableWhen, getEndLine, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFormItemAutoChild, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverAutoFitMaxWidth, getHoverAutoFitMaxWidthAsString, getHoverAutoFitWidth, getHoverComponent, getHoverDelay, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapOrigin, getHSnapOrigin, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getIsPrinting, getIsRuleScope, getIsSnapAlignCandidate, getKeepInParentRect, getLayoutAlign, getLeavePageSpace, getLeft, getLeftAsString, getLocalId, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMaxHeight, getMaxWidth, getMaxZoomOverflowError, getMenuConstructor, getMinHeight, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getNextZIndex, getNoDoubleClicks, getNoDropCursor, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getOverflow, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getPaletteDefaults, getPanelContainer, getParentCanvas, getParentElement, getPeers, getPercentBox, getPercentSource, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getRuleContext, getRuleContext, getRuleScope, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowColor, getShadowDepth, getShadowHOffset, getShadowImage, getShadowOffset, getShadowSoftness, getShadowSpread, getShadowVOffset, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSizeMayChangeOnRedraw, getSkinImgDir, getSnapAlignCandidates, getSnapAlignCenterLineStyle, getSnapAlignEdgeLineStyle, getSnapAxis, getSnapEdge, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapPosition, getSnapPosition, getSnapResizeToAlign, getSnapResizeToGrid, getSnapTo, getSnapToAlign, getSnapToCenterAlign, getSnapToEdgeAlign, getSnapToGrid, getSnapVDirection, getSnapVGap, getStartLine, getTabIndex, getTestInstance, getTooltip, getTop, getTopAsString, getTopElement, getUpdateTabPositionOnDraw, getUpdateTabPositionOnReparent, getUseBackMask, getUseCSSShadow, getUseDragMask, getUseImageForSVG, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getValuesManagerAsString, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWhen, getVisibleWidth, getVSnapOrigin, getVSnapOrigin, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, intersects, isDirty, isDisabled, isFocused, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, onInit, pageScrollDown, pageScrollUp, parentResized, placeNear, placeNear, placeNear, printComponents, provideRuleContext, provideRuleContext, redraw, redraw, removeChild, removeChild, removePeer, removePeer, removeSnapAlignCandidate, resizeAutoChildAttributes, resizeBy, resizeControls, resizeFonts, resizeFonts, resizeFonts, resizeIcons, resizeTo, resizeTo, revealChild, revealChild, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAdaptHeightByCustomizer, setAdaptiveHeightPriority, setAdaptiveWidthPriority, setAdaptWidthByCustomizer, setAlign, setAllowExternalFilters, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideEffect, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoDraw, setAutoHeight, setAutoMaskComponents, setAutoParent, setAutoResizeAutoChildAttributes, setAutoResizeIcons, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBottom, setCanAcceptDrop, setCanAdaptHeight, setCanAdaptWidth, setCanDrag, setCanDragReposition, setCanDragResize, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setCanSelectText, setChildren, setChildrenResizeSnapAlign, setChildrenSnapAlign, setChildrenSnapCenterAlign, setChildrenSnapEdgeAlign, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContents, setContextMenu, setCorrectZoomOverflow, setCursor, setDataPath, setDefaultHeight, setDefaultPageSpace, setDefaultProperties, setDefaultWidth, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragMaxHeight, setDragMaxWidth, setDragMinHeight, setDragMinWidth, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragType, setDropTypes, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setElement, setEnableWhen, setEndLine, setExtraSpace, setFacetId, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverAutoFitMaxWidth, setHoverAutoFitMaxWidth, setHoverAutoFitWidth, setHoverDelay, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setIsRuleScope, setIsSnapAlignCandidate, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeavePageSpace, setLeft, setLeft, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLogicalStructure, setMargin, setMatchElement, setMaxHeight, setMaxWidth, setMaxZoomOverflowError, setMenuConstructor, setMinHeight, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setNeverUseFilters, setNoDoubleClicks, setNoDropCursor, setOpacity, setOverflow, setPadding, setPageLeft, setPageTop, setPanelContainer, setParentCanvas, setParentElement, setPeers, setPercentBox, setPercentSource, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setRect, setRect, setRedrawOnResize, setRelativeTabPosition, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setRuleScope, setScrollbarConstructor, setScrollbarSize, setShadowColor, setShadowDepth, setShadowHOffset, setShadowImage, setShadowOffset, setShadowSoftness, setShadowSpread, setShadowVOffset, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSizeMayChangeOnRedraw, setSkinImgDir, setSmoothFade, setSnapAlignCandidates, setSnapAlignCenterLineStyle, setSnapAlignEdgeLineStyle, setSnapAxis, setSnapEdge, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToAlign, setSnapResizeToGrid, setSnapTo, setSnapToAlign, setSnapToCenterAlign, setSnapToEdgeAlign, setSnapToGrid, setSnapVDirection, setSnapVGap, setStartLine, setTabIndex, setTooltip, setTop, setTop, setUpdateTabPositionOnDraw, setUpdateTabPositionOnReparent, setUseBackMask, setUseCSSShadow, setUseDragMask, setUseImageForSVG, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setValuesManager, setVisibility, setVisible, setVisibleWhen, setWidth, setWidth, setWidth, setWidth100, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, updateChildTabPosition, updateChildTabPositions, updateEditNode, updateHover, updateHover, updateShadow, updateTabPositionForDraw, visibleAtPoint, willAcceptDrop`

    - ### Methods inherited from class com.smartgwt.client.widgets.BaseWidget

      `addDrawHandler, applyFactoryProperties, completeCreation, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isDrawn, isFactoryCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setDefaultProperties, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, setLogicalStructure, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

      `fireEvent`

- - ### Constructor Detail

    - #### FacetChart

          public FacetChart()

    - #### FacetChart

          public FacetChart(com.google.gwt.core.client.JavaScriptObject jsObj)

  - ### Method Detail

    - #### getOrCreateRef

          public static FacetChart getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.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:
        `AutoChildUsage`

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.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:
        `AutoChildUsage`

    - #### create

          protected com.google.gwt.core.client.JavaScriptObject create()

      Overrides:
        `create` in class `DrawPane`

    - #### setAllowBubbleGradients

          public void setAllowBubbleGradients(boolean allowBubbleGradients)
                                       throws java.lang.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)
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### 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)

    - #### setAllowedChartTypes

          public void 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

    - #### 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 void setAutoRotateLabels(java.lang.Boolean autoRotateLabels)
                                   throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAutoRotateLabels

          public java.lang.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

    - #### setAutoScrollData

          public void setAutoScrollData(boolean autoScrollData)

      For a column, histogram, line, or area chart that has `facet values displayed along the x-axis`, should the chart be expanded automatically 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 thicknesses` or the margins between them.

      Note that this feature is incompatible with the following properties:

      - `LabelCollapseMode` (other than the default of "none")
      - `rotateLabels` (in "auto" mode)
      - `canDragScroll`
      - `canZoom`
      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`.
      If this method is called after the component has been drawn/initialized: Sets `autoScrollData` and updates the chart.
      Parameters:
        `autoScrollData` - whether chart should expand automatically horizontally to accommodate content. Default value is false
      See Also:
        `setCanZoom(java.lang.Boolean)`, `setRotateLabels(com.smartgwt.client.types.LabelRotationMode)`, `LabelCollapseMode`, `com.smartgwt.client.widgets.chart.FacetChart#getMinClusterSize`, `DrawPane.setCanDragScroll(boolean)`

    - #### getAutoScrollData

          public boolean getAutoScrollData()

      For a column, histogram, line, or area chart that has `facet values displayed along the x-axis`, should the chart be expanded automatically 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 thicknesses` or the margins between them.

      Note that this feature is incompatible with the following properties:

      - `LabelCollapseMode` (other than the default of "none")
      - `rotateLabels` (in "auto" mode)
      - `canDragScroll`
      - `canZoom`
      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`.
      Returns:
        Current autoScrollData value. Default value is false
      See Also:
        `getCanZoom()`, `getRotateLabels()`, `LabelCollapseMode`, `com.smartgwt.client.widgets.chart.FacetChart#getMinClusterSize`, `DrawPane.getCanDragScroll()`

    - #### setAutoScrollDataApproach

          public void setAutoScrollDataApproach(AutoScrollDataApproach autoScrollDataApproach)

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

      If you're sizing bars very tightly to labels by defining `getMinClusterSize()`, you may not want label-driven expansion, as the separation between them assigned automatically 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
      See Also:
        `setAutoScrollData(boolean)`

    - #### getAutoScrollDataApproach

          public AutoScrollDataApproach getAutoScrollDataApproach()

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

      If you're sizing bars very tightly to labels by defining `getMinClusterSize()`, you may not want label-driven expansion, as the separation between them assigned automatically 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:
        `getAutoScrollData()`

    - #### setAutoSortBubblePoints

          public void setAutoSortBubblePoints(boolean autoSortBubblePoints)
                                       throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        Bubble Chart Example

    - #### 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:
        Bubble Chart Example

    - #### setAxisEndValue

          public void setAxisEndValue(java.lang.Double axisEndValue)
                               throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAxisEndValue

          public java.lang.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 void setAxisStartValue(java.lang.Double axisStartValue)
                                 throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAxisStartValue

          public java.lang.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 void setBackgroundBandProperties(DrawRect backgroundBandProperties)
                                           throws java.lang.IllegalStateException

      Properties for background band
      Parameters:
        `backgroundBandProperties` - New backgroundBandProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getBackgroundBandProperties

          public DrawRect getBackgroundBandProperties()

      Properties for background band
      Returns:
        Current backgroundBandProperties value. Default value is null

    - #### setBandedBackground

          public void setBandedBackground(java.lang.Boolean bandedBackground)
                                   throws java.lang.IllegalStateException

      Whether to show alternating color bands in the background of chart. See `backgroundBandProperties`.
      Parameters:
        `bandedBackground` - New bandedBackground value. Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getBandedBackground

          public java.lang.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 void setBandedStandardDeviations(java.lang.Boolean bandedStandardDeviations)
                                           throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setStandardDeviationBandProperties(com.smartgwt.client.widgets.drawing.DrawItem...)`

    - #### getBandedStandardDeviations

          public java.lang.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 void setBarMargin(int barMargin)
                            throws java.lang.IllegalStateException

      Distance between bars. May be reduced if bars would be smaller than `minBarThickness`.
      Parameters:
        `barMargin` - New barMargin value. Default value is 4
      Throws:
        `java.lang.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 void setBarProperties(DrawRect barProperties)

      Properties for bar
      Parameters:
        `barProperties` - New barProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getBarProperties

          public DrawRect getBarProperties()

      Properties for bar
      Returns:
        Current barProperties value. Default value is null

    - #### setBrightenAllOnHover

          public void setBrightenAllOnHover(java.lang.Boolean brightenAllOnHover)

      When hovering over a bar chart block, should the whole bar chart area be brightened Default behaviour is to just brighten the line color around the bar chart area
      Parameters:
        `brightenAllOnHover` - New brightenAllOnHover value. Default value is null

    - #### getBrightenAllOnHover

          public java.lang.Boolean getBrightenAllOnHover()

      When hovering over a bar chart block, should the whole bar chart area be brightened Default behaviour is to just brighten the line color around the bar chart area
      Returns:
        Current brightenAllOnHover value. Default value is null

    - #### setBubbleHoverMaxDistance

          public void setBubbleHoverMaxDistance(int bubbleHoverMaxDistance)
                                         throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### 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

    - #### setBubbleProperties

          public void setBubbleProperties(DrawItem bubbleProperties)
                                   throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`, Bubble Chart Example

    - #### 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:
        Bubble Chart Example

    - #### setCanMoveAxes

          public void setCanMoveAxes(java.lang.Boolean canMoveAxes)
                              throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanMoveAxes

          public java.lang.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

    - #### setCanZoom

          public void setCanZoom(java.lang.Boolean canZoom)
                          throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanZoom

          public java.lang.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 void setCenterLegend(java.lang.Boolean centerLegend)
                               throws java.lang.IllegalStateException

      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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setShowLegend(java.lang.Boolean)`, `setCenterTitle(java.lang.Boolean)`, `setAutoScrollData(boolean)`

    - #### getCenterLegend

          public java.lang.Boolean getCenterLegend()

      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:
        `getShowLegend()`, `getCenterTitle()`, `getAutoScrollData()`

    - #### setCenterTitle

          public void setCenterTitle(java.lang.Boolean centerTitle)
                              throws java.lang.IllegalStateException

      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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setTitle(java.lang.String)`, `setShowTitle(java.lang.Boolean)`, `setCenterLegend(java.lang.Boolean)`, `setAutoScrollData(boolean)`

    - #### getCenterTitle

          public java.lang.Boolean getCenterTitle()

      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:
        `getTitle()`, `getShowTitle()`, `getCenterLegend()`, `getAutoScrollData()`

    - #### setChartRectMargin

          public void setChartRectMargin(int chartRectMargin)
                                  throws java.lang.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
      Throws:
        `java.lang.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 void 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
      See Also:
        `SGWTProperties`

    - #### 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 void 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"

    - #### 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 void setClusterMarginRatio(float clusterMarginRatio)
                                     throws java.lang.IllegalStateException

      For clustered charts, ratio between margins between individual bars and margins between clusters.
      Parameters:
        `clusterMarginRatio` - New clusterMarginRatio value. Default value is 4
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### 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

    - #### setColorMutePercent

          public void setColorMutePercent(java.lang.Float colorMutePercent)
                                   throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getColorMutePercent

          public java.lang.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 void setColorScaleMetric(java.lang.String colorScaleMetric)
                                   throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        Color Scale Chart Example

    - #### getColorScaleMetric

          public java.lang.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:
        Color Scale Chart Example

    - #### setDataAxisLabelProperties

          public void setDataAxisLabelProperties(DrawLabel dataAxisLabelProperties)

      Properties for labels of data axis.
      Parameters:
        `dataAxisLabelProperties` - New dataAxisLabelProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getDataAxisLabelProperties

          public DrawLabel getDataAxisLabelProperties()

      Properties for labels of data axis.
      Returns:
        Current dataAxisLabelProperties value. Default value is null

    - #### setDataColors

          public void setDataColors(java.lang.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
      See Also:
        `CSSColor`

    - #### getDataColors

          public java.lang.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:
        `CSSColor`

    - #### setDataLabelProperties

          public void setDataLabelProperties(DrawLabel dataLabelProperties)

      Properties for data label
      Parameters:
        `dataLabelProperties` - New dataLabelProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getDataLabelProperties

          public DrawLabel getDataLabelProperties()

      Properties for data label
      Returns:
        Current dataLabelProperties value. Default value is null

    - #### setDataLineProperties

          public void setDataLineProperties(DrawLine dataLineProperties)
                                     throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### 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 void 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

    - #### 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 void setDataMargin(int dataMargin)
                             throws java.lang.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
      Throws:
        `java.lang.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 void setDataOutlineProperties(DrawItem dataOutlineProperties)
                                        throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### 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 void setDataPointProperties(DrawItem dataPointProperties)
                                      throws java.lang.IllegalStateException

      Common properties to apply for all data points (see `showDataPoints`).
      Parameters:
        `dataPointProperties` - New dataPointProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getDataPointProperties

          public DrawItem getDataPointProperties()

      Common properties to apply for all data points (see `showDataPoints`).
      Returns:
        Current dataPointProperties value. Default value is null

    - #### setDataPointSize

          public void setDataPointSize(int dataPointSize)
                                throws java.lang.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
      Throws:
        `java.lang.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 void setDataShapeProperties(DrawPath dataShapeProperties)
                                      throws java.lang.IllegalStateException

      Properties for data shapes (filled areas in area or radar charts).
      Parameters:
        `dataShapeProperties` - New dataShapeProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getDataShapeProperties

          public DrawPath getDataShapeProperties()

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

    - #### setDecimalPrecision

          public void setDecimalPrecision(int decimalPrecision)
                                   throws java.lang.IllegalStateException

      Default precision used when formatting float numbers for axis labels
      Parameters:
        `decimalPrecision` - New decimalPrecision value. Default value is 2
      Throws:
        `java.lang.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 void setDiscontinuousLines(java.lang.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

    - #### getDiscontinuousLines

          public java.lang.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 void setDoughnutHoleProperties(DrawOval doughnutHoleProperties)

      Properties for doughnut hole
      Parameters:
        `doughnutHoleProperties` - New doughnutHoleProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getDoughnutHoleProperties

          public DrawOval getDoughnutHoleProperties()

      Properties for doughnut hole
      Returns:
        Current doughnutHoleProperties value. Default value is null

    - #### setDoughnutRatio

          public void setDoughnutRatio(float doughnutRatio)
                                throws java.lang.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
      Throws:
        `java.lang.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 void setDrawLegendBoundary(java.lang.Boolean drawLegendBoundary)
                                     throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDrawLegendBoundary

          public java.lang.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 void setDrawTitleBackground(java.lang.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

    - #### getDrawTitleBackground

          public java.lang.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 void setDrawTitleBoundary(java.lang.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

    - #### getDrawTitleBoundary

          public java.lang.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 void setEditProxyConstructor(java.lang.String editProxyConstructor)
                                       throws java.lang.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"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SCClassName`

    - #### getEditProxyConstructor

          public java.lang.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:
        `SCClassName`

    - #### setEndValueMetric

          public void setEndValueMetric(java.lang.String endValueMetric)
                                 throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setMetricFacetId(java.lang.String)`

    - #### getEndValueMetric

          public java.lang.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:
        `getMetricFacetId()`

    - #### setErrorBarColorMutePercent

          public void setErrorBarColorMutePercent(float errorBarColorMutePercent)
                                           throws java.lang.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
      Throws:
        `java.lang.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 void setErrorBarWidth(int errorBarWidth)
                                throws java.lang.IllegalStateException

      Width of the horizontal line of the "T"-shape portion of the error bar).
      Parameters:
        `errorBarWidth` - New errorBarWidth value. Default value is 6
      Throws:
        `java.lang.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 void setErrorLineProperties(DrawLine errorLineProperties)
                                      throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setErrorBarColorMutePercent(float)`, `SGWTProperties`

    - #### 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:
        `getErrorBarColorMutePercent()`

    - #### setExpectedValueLineProperties

          public void setExpectedValueLineProperties(DrawItem expectedValueLineProperties)
                                              throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### 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

    - #### setExtraAxisMetrics

          public void setExtraAxisMetrics(java.lang.String... extraAxisMetrics)
                                   throws java.lang.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 []
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getExtraAxisMetrics

          public java.lang.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 []

    - #### setExtraAxisSettings

          public void setExtraAxisSettings(MetricSettings... extraAxisSettings)
                                    throws java.lang.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 `chartType`s 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 []
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### 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 `chartType`s 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 []

    - #### setFacets

          public void setFacets(Facet... facets)
                         throws java.lang.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.

      Parameters:
        `facets` - New facets value. Default value is null
      Throws:
        `java.lang.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.

      Returns:
        Current facets value. Default value is null

    - #### setFacets

          public void setFacets(Facet facets)
                         throws java.lang.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.

      Parameters:
        `facets` - New facets value. Default value is null
      Throws:
        `java.lang.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.

      Returns:
        Current facets value. Default value is null

    - #### setFilled

          public void setFilled(java.lang.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

    - #### getFilled

          public java.lang.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 void setFormatStringFacetValueIds(java.lang.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
      See Also:
        `setXAxisValueFormatter(com.smartgwt.client.widgets.chart.ValueFormatter)`, `formatFacetValueId(java.lang.Object, com.smartgwt.client.widgets.cube.Facet)`

    - #### getFormatStringFacetValueIds

          public java.lang.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:
        `setXAxisValueFormatter(com.smartgwt.client.widgets.chart.ValueFormatter)`, `formatFacetValueId(java.lang.Object, com.smartgwt.client.widgets.cube.Facet)`

    - #### setGradationGaps

          public void 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]
      See Also:
        Custom Date Ticks Example

    - #### 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:
        Custom Date Ticks Example

    - #### setGradationLabelPadding

          public void setGradationLabelPadding(int gradationLabelPadding)
                                        throws java.lang.IllegalStateException

      Padding from edge of Y the Axis Label.
      Parameters:
        `gradationLabelPadding` - New gradationLabelPadding value. Default value is 5
      Throws:
        `java.lang.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 void setGradationLabelProperties(DrawLabel gradationLabelProperties)
                                           throws java.lang.IllegalStateException

      Properties for gradation labels
      Parameters:
        `gradationLabelProperties` - New gradationLabelProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getGradationLabelProperties

          public DrawLabel getGradationLabelProperties()

      Properties for gradation labels
      Returns:
        Current gradationLabelProperties value. Default value is null

    - #### setGradationLineProperties

          public void setGradationLineProperties(DrawLine gradationLineProperties)
                                          throws java.lang.IllegalStateException

      Properties for gradation lines
      Parameters:
        `gradationLineProperties` - New gradationLineProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getGradationLineProperties

          public DrawLine getGradationLineProperties()

      Properties for gradation lines
      Returns:
        Current gradationLineProperties value. Default value is null

    - #### setGradationTickMarkLength

          public void setGradationTickMarkLength(java.lang.Integer gradationTickMarkLength)
                                          throws java.lang.IllegalStateException

      Deprecated. use `tickLength` instead
      Parameters:
        `gradationTickMarkLength` - New gradationTickMarkLength value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getGradationTickMarkLength

          public java.lang.Integer getGradationTickMarkLength()

      Deprecated. use `tickLength` instead
      Returns:
        Current gradationTickMarkLength value. Default value is null

    - #### setGradationZeroLineProperties

          public void setGradationZeroLineProperties(DrawLine gradationZeroLineProperties)
                                              throws java.lang.IllegalStateException

      Properties for the gradation line drawn for zero (slightly thicker by default).
      Parameters:
        `gradationZeroLineProperties` - New gradationZeroLineProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### 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 void setHighErrorMetric(java.lang.String highErrorMetric)
                                  throws java.lang.IllegalStateException

      See `lowErrorMetric`.
      Parameters:
        `highErrorMetric` - New highErrorMetric value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getHighErrorMetric

          public java.lang.String getHighErrorMetric()

      See `lowErrorMetric`.
      Returns:
        Current highErrorMetric value. Default value is null

    - #### setHoverLabelPadding

          public void setHoverLabelPadding(int hoverLabelPadding)
                                    throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### 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

    - #### setHoverLabelProperties

          public void setHoverLabelProperties(DrawLabel hoverLabelProperties)
                                       throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setHoverLabelPadding(int)`, `SGWTProperties`

    - #### 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:
        `getHoverLabelPadding()`

    - #### setHoverRectProperties

          public void setHoverRectProperties(DrawRect hoverRectProperties)
                                      throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### 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

    - #### setLabelCollapseMode

          public void setLabelCollapseMode(LabelCollapseMode labelCollapseMode)
                                    throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setXAxisValueFormatter(com.smartgwt.client.widgets.chart.ValueFormatter)`

    - #### 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:
        `setXAxisValueFormatter(com.smartgwt.client.widgets.chart.ValueFormatter)`

    - #### setLegendAlign

          public void setLegendAlign(LegendAlign legendAlign)

      Horizontal alignment of the chart's `legend widget`.
      Parameters:
        `legendAlign` - New legendAlign value. Default value is "center"

    - #### getLegendAlign

          public LegendAlign getLegendAlign()

      Horizontal alignment of the chart's `legend widget`.
      Returns:
        Current legendAlign value. Default value is "center"

    - #### setLegendBoundaryProperties

          public void setLegendBoundaryProperties(DrawLine legendBoundaryProperties)
                                           throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### 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 void setLegendItemPadding(int legendItemPadding)
                                    throws java.lang.IllegalStateException

      Padding between each swatch and label pair.
      Parameters:
        `legendItemPadding` - New legendItemPadding value. Default value is 5
      Throws:
        `java.lang.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 void setLegendLabelProperties(DrawLabel legendLabelProperties)
                                        throws java.lang.IllegalStateException

      Properties for labels shown next to legend color swatches.
      Parameters:
        `legendLabelProperties` - New legendLabelProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getLegendLabelProperties

          public DrawLabel getLegendLabelProperties()

      Properties for labels shown next to legend color swatches.
      Returns:
        Current legendLabelProperties value. Default value is null

    - #### setLegendMargin

          public void setLegendMargin(int legendMargin)
                               throws java.lang.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
      Throws:
        `java.lang.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 void setLegendPadding(int legendPadding)
                                throws java.lang.IllegalStateException

      Padding around the legend as a whole.
      Parameters:
        `legendPadding` - New legendPadding value. Default value is 5
      Throws:
        `java.lang.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 void setLegendRectHeight(int legendRectHeight)
                                   throws java.lang.IllegalStateException

      If drawing a border around the legend, the height of the drawn Rectangle.
      Parameters:
        `legendRectHeight` - New legendRectHeight value. Default value is 5
      Throws:
        `java.lang.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 void setLegendRectProperties(DrawRect legendRectProperties)
                                       throws java.lang.IllegalStateException

      Properties for rectangle around the legend as a whole.
      Parameters:
        `legendRectProperties` - New legendRectProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getLegendRectProperties

          public DrawRect getLegendRectProperties()

      Properties for rectangle around the legend as a whole.
      Returns:
        Current legendRectProperties value. Default value is null

    - #### setLegendSwatchProperties

          public void setLegendSwatchProperties(DrawRect legendSwatchProperties)
                                         throws java.lang.IllegalStateException

      Properties for the swatches of color shown in the legend.
      Parameters:
        `legendSwatchProperties` - New legendSwatchProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getLegendSwatchProperties

          public DrawRect getLegendSwatchProperties()

      Properties for the swatches of color shown in the legend.
      Returns:
        Current legendSwatchProperties value. Default value is null

    - #### setLegendSwatchSize

          public void setLegendSwatchSize(int legendSwatchSize)
                                   throws java.lang.IllegalStateException

      Size of individual color swatches in legend.
      Parameters:
        `legendSwatchSize` - New legendSwatchSize value. Default value is 16
      Throws:
        `java.lang.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 void setLegendTextPadding(int legendTextPadding)
                                    throws java.lang.IllegalStateException

      Padding between color swatch and its label.
      Parameters:
        `legendTextPadding` - New legendTextPadding value. Default value is 5
      Throws:
        `java.lang.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 void setLogBase(int logBase)
                          throws java.lang.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
      Throws:
        `java.lang.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 void setLogGradations(float... logGradations)
                                throws java.lang.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 ]
      Throws:
        `java.lang.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 void setLogScale(java.lang.Boolean logScale)
                           throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getLogScale

          public java.lang.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 void setLogScalePointColor(boolean logScalePointColor)
                                     throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setPointColorLogBase(java.lang.Integer)`, Color Scale Chart Example

    - #### 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:
        `getPointColorLogBase()`, Color Scale Chart Example

    - #### setLogScalePointSize

          public void setLogScalePointSize(boolean logScalePointSize)
                                    throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setPointSizeLogBase(java.lang.Integer)`, Bubble Chart Example

    - #### 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:
        `getPointSizeLogBase()`, Bubble Chart Example

    - #### setLowErrorMetric

          public void setLowErrorMetric(java.lang.String lowErrorMetric)
                                 throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setMetricFacetId(java.lang.String)`, Error Bars Example

    - #### getLowErrorMetric

          public java.lang.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:
        `getMetricFacetId()`, Error Bars Example

    - #### setMajorTickGradations

          public void setMajorTickGradations(float... majorTickGradations)
                                      throws java.lang.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]
      Throws:
        `java.lang.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 void setMajorTickTimeIntervals(java.lang.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

    - #### getMajorTickTimeIntervals

          public java.lang.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 void setMatchBarChartDataLineColor(java.lang.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

    - #### getMatchBarChartDataLineColor

          public java.lang.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 void setMaxBarThickness(int maxBarThickness)
                                  throws java.lang.IllegalStateException

      Bars will not be drawn over this thickness, instead, margins will be increased.
      Parameters:
        `maxBarThickness` - New maxBarThickness value. Default value is 150
      Throws:
        `java.lang.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 void setMaxDataPointSize(double maxDataPointSize)
                                   throws java.lang.IllegalStateException

      The maximum allowed data point size when controlled by `pointSizeMetric`.
      Parameters:
        `maxDataPointSize` - New maxDataPointSize value. Default value is 14
      Throws:
        `java.lang.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 void setMaxDataZIndex(java.lang.Integer maxDataZIndex)
                                throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ChartType`, `setZIndexMetric(java.lang.String)`

    - #### getMaxDataZIndex

          public java.lang.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:
        `ChartType`, `getZIndexMetric()`

    - #### setMetricFacetId

          public void setMetricFacetId(java.lang.String metricFacetId)
                                throws java.lang.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"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getMetricFacetId

          public java.lang.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 void setMinBarThickness(int minBarThickness)
                                  throws java.lang.IllegalStateException

      If bars would be smaller than this size, margins are reduced until bars overlap.
      Parameters:
        `minBarThickness` - New minBarThickness value. Default value is 4
      Throws:
        `java.lang.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`

    - #### setMinDataPointSize

          public void setMinDataPointSize(double minDataPointSize)
                                   throws java.lang.IllegalStateException

      The minimum allowed data point size when controlled by `pointSizeMetric`.
      Parameters:
        `minDataPointSize` - New minDataPointSize value. Default value is 3
      Throws:
        `java.lang.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 void setMinDataSpreadPercent(int minDataSpreadPercent)
                                       throws java.lang.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
      Throws:
        `java.lang.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 void setMinLabelGap(java.lang.Integer minLabelGap)
                              throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getMinLabelGap

          public java.lang.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 void 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
      See Also:
        `setTickLength(int)`

    - #### 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:
        `getTickLength()`

    - #### setMinXDataSpreadPercent

          public void setMinXDataSpreadPercent(int minXDataSpreadPercent)
                                        throws java.lang.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
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setMinDataSpreadPercent(int)`

    - #### 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:
        `getMinDataSpreadPercent()`

    - #### setOtherAxisGradationGaps

          public void 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

    - #### 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 void setOtherAxisGradationTimes(java.lang.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
      See Also:
        Custom Date Ticks Example

    - #### getOtherAxisGradationTimes

          public java.lang.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:
        Custom Date Ticks Example

    - #### setOtherAxisPixelsPerGradation

          public void setOtherAxisPixelsPerGradation(java.lang.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
      See Also:
        `setPixelsPerGradation(int)`

    - #### getOtherAxisPixelsPerGradation

          public java.lang.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:
        `getPixelsPerGradation()`

    - #### setPadChartRectByCornerRadius

          public void setPadChartRectByCornerRadius(boolean padChartRectByCornerRadius)
                                             throws java.lang.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
      Throws:
        `java.lang.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 void setPieBorderProperties(DrawOval pieBorderProperties)
                                      throws java.lang.IllegalStateException

      Properties for the border around a pie chart.
      Parameters:
        `pieBorderProperties` - New pieBorderProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getPieBorderProperties

          public DrawOval getPieBorderProperties()

      Properties for the border around a pie chart.
      Returns:
        Current pieBorderProperties value. Default value is null

    - #### setPieLabelAngleStart

          public void setPieLabelAngleStart(int pieLabelAngleStart)
                                     throws java.lang.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
      Throws:
        `java.lang.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 void setPieLabelLineExtent(int pieLabelLineExtent)
                                     throws java.lang.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
      Throws:
        `java.lang.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 void setPieLabelLineProperties(DrawLine pieLabelLineProperties)

      Properties for pie label line
      Parameters:
        `pieLabelLineProperties` - New pieLabelLineProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getPieLabelLineProperties

          public DrawLine getPieLabelLineProperties()

      Properties for pie label line
      Returns:
        Current pieLabelLineProperties value. Default value is null

    - #### setPieRingBorderProperties

          public void setPieRingBorderProperties(DrawOval pieRingBorderProperties)
                                          throws java.lang.IllegalStateException

      Properties for pie ring border
      Parameters:
        `pieRingBorderProperties` - New pieRingBorderProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getPieRingBorderProperties

          public DrawOval getPieRingBorderProperties()

      Properties for pie ring border
      Returns:
        Current pieRingBorderProperties value. Default value is null

    - #### setPieSliceProperties

          public void setPieSliceProperties(DrawSector pieSliceProperties)
                                     throws java.lang.IllegalStateException

      Properties for pie slices
      Parameters:
        `pieSliceProperties` - New pieSliceProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getPieSliceProperties

          public DrawSector getPieSliceProperties()

      Properties for pie slices
      Returns:
        Current pieSliceProperties value. Default value is null

    - #### setPieStartAngle

          public void setPieStartAngle(java.lang.Integer pieStartAngle)
                                throws java.lang.IllegalStateException

      Default angle in degrees where pie charts start drawing sectors to represent data values. Default of 0 places the first value starting from the "east" position. Use 270 or -90 for north.
      Parameters:
        `pieStartAngle` - New pieStartAngle value. Default value is 0
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getPieStartAngle

          public java.lang.Integer getPieStartAngle()

      Default angle in degrees where pie charts start drawing sectors to represent data values. Default of 0 places the first value starting from the "east" position. Use 270 or -90 for north.
      Returns:
        Current pieStartAngle value. Default value is 0

    - #### setPixelsPerGradation

          public void setPixelsPerGradation(int pixelsPerGradation)

      Ideal number of pixels to leave between each gradation on the primary axis, which is typically the y (vertical) axis except for Bar charts.

      The chart will detect the range of values being displayed and available pixels on the vertical axis, and generate gradations that are spaced approximately `pixelsPerGradations` apart. Note that the Framework will attempt to approach the specified target gap from above - the chart will never be drawn with gradations spaced closer than `pixelsPerGradation`.
      If this method is called after the component has been drawn/initialized: Setter for `pixelsPerGradation`.

      Parameters:
        `pixelsPerGradation` - new `pixelsPerGradation` value. Default value is 28
      See Also:
        `setOtherAxisPixelsPerGradation(java.lang.Integer)`

    - #### getPixelsPerGradation

          public int getPixelsPerGradation()

      Ideal number of pixels to leave between each gradation on the primary axis, which is typically the y (vertical) axis except for Bar charts.

      The chart will detect the range of values being displayed and available pixels on the vertical axis, and generate gradations that are spaced approximately `pixelsPerGradations` apart. Note that the Framework will attempt to approach the specified target gap from above - the chart will never be drawn with gradations spaced closer than `pixelsPerGradation`.

      Returns:
        Current pixelsPerGradation value. Default value is 28
      See Also:
        `getOtherAxisPixelsPerGradation()`

    - #### setPointColorLogBase

          public void setPointColorLogBase(java.lang.Integer pointColorLogBase)
                                    throws java.lang.IllegalStateException

      When `logScalePointColor` is `true`, this property specifies the base value for logarithmic `color scale metric` values.
      Parameters:
        `pointColorLogBase` - New pointColorLogBase value. Default value is 10
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getPointColorLogBase

          public java.lang.Integer getPointColorLogBase()

      When `logScalePointColor` is `true`, this property specifies the base value for logarithmic `color scale metric` values.
      Returns:
        Current pointColorLogBase value. Default value is 10

    - #### setPointShapes

          public void setPointShapes(PointShape... pointShapes)
                              throws java.lang.IllegalStateException

      For charts where `showDataPoints` is enabled, this property specifies an array of geometric shapes to draw for the data points of each series.
      Parameters:
        `pointShapes` - New pointShapes value. Default value is ["Oval", "Square", "Diamond", "Triangle"]
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getPointShapes

          public PointShape[] getPointShapes()

      For charts where `showDataPoints` is enabled, this property specifies an array of geometric shapes to draw for the data points of each series.
      Returns:
        Current pointShapes value. Default value is ["Oval", "Square", "Diamond", "Triangle"]

    - #### setPointSizeGradations

          public void setPointSizeGradations(java.lang.Integer pointSizeGradations)
                                      throws java.lang.IllegalStateException

      When a `point size legend` is shown, this property controls the number of gradations of the `pointSizeMetric` that the chart tries to display.

      Note that if `usePointSizeLogGradations` is set then the number of gradations is not given by this property but rather by the entries of `pointSizeLogGradations`.

      Parameters:
        `pointSizeGradations` - New pointSizeGradations value. Default value is 5
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getPointSizeGradations

          public java.lang.Integer getPointSizeGradations()

      When a `point size legend` is shown, this property controls the number of gradations of the `pointSizeMetric` that the chart tries to display.

      Note that if `usePointSizeLogGradations` is set then the number of gradations is not given by this property but rather by the entries of `pointSizeLogGradations`.

      Returns:
        Current pointSizeGradations value. Default value is 5

    - #### setPointSizeLogBase

          public void setPointSizeLogBase(java.lang.Integer pointSizeLogBase)
                                   throws java.lang.IllegalStateException

      When `logScalePointSize` is true, base value for logarithmic point size metric values.
      Parameters:
        `pointSizeLogBase` - New pointSizeLogBase value. Default value is 10
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getPointSizeLogBase

          public java.lang.Integer getPointSizeLogBase()

      When `logScalePointSize` is true, base value for logarithmic point size metric values.
      Returns:
        Current pointSizeLogBase value. Default value is 10

    - #### setPointSizeLogGradations

          public void setPointSizeLogGradations(float... pointSizeLogGradations)
                                         throws java.lang.IllegalStateException

      When `usePointSizeLogGradations` is set, this property specifies the `pointSizeMetric` value gradations to show in the `point size legend` in between powers, expressed as a series of integer or float values between 1 and `pointSizeLogBase`.
      Parameters:
        `pointSizeLogGradations` - New pointSizeLogGradations value. Default value is [1, 5]
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setLogGradations(float...)`

    - #### getPointSizeLogGradations

          public float[] getPointSizeLogGradations()

      When `usePointSizeLogGradations` is set, this property specifies the `pointSizeMetric` value gradations to show in the `point size legend` in between powers, expressed as a series of integer or float values between 1 and `pointSizeLogBase`.
      Returns:
        Current pointSizeLogGradations value. Default value is [1, 5]
      See Also:
        `getLogGradations()`

    - #### setPointSizeMetric

          public void setPointSizeMetric(java.lang.String pointSizeMetric)
                                  throws java.lang.IllegalStateException

      For charts where `showDataPoints` is enabled, this property specifies an additional metric (i.e. an "id" of a metric facet value) that determines the size of the data points drawn. For example, when a circle is drawn to represent a data point then the size of the data point is the diameter of the circle, in pixels.

      The size is calculated by linearly scaling the value of the `pointSizeMetric` of the point between the `minDataPointSize` and `maxDataPointSize`. The data point that has the lowest value for the `pointSizeMetric` will be drawn as a shape `minDataPointSize` pixels in size, and the data point that has the highest value for the `pointSizeMetric` will be drawn as a shape `maxDataPointSize` pixels in size.

      Using a log-scale to calulate the size of the data points is achieved by enabling `logScalePointSize`.

      If the `ChartType` is `"Bubble"` then the default `pointSizeMetric` is `"pointSize"`.

      Note that setting `pointSizeMetric` to non-`null` implicitly enables `showDataPoints`.

      Parameters:
        `pointSizeMetric` - New pointSizeMetric value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        Bubble Chart Example

    - #### getPointSizeMetric

          public java.lang.String getPointSizeMetric()

      For charts where `showDataPoints` is enabled, this property specifies an additional metric (i.e. an "id" of a metric facet value) that determines the size of the data points drawn. For example, when a circle is drawn to represent a data point then the size of the data point is the diameter of the circle, in pixels.

      The size is calculated by linearly scaling the value of the `pointSizeMetric` of the point between the `minDataPointSize` and `maxDataPointSize`. The data point that has the lowest value for the `pointSizeMetric` will be drawn as a shape `minDataPointSize` pixels in size, and the data point that has the highest value for the `pointSizeMetric` will be drawn as a shape `maxDataPointSize` pixels in size.

      Using a log-scale to calulate the size of the data points is achieved by enabling `logScalePointSize`.

      If the `ChartType` is `"Bubble"` then the default `pointSizeMetric` is `"pointSize"`.

      Note that setting `pointSizeMetric` to non-`null` implicitly enables `showDataPoints`.

      Returns:
        Current pointSizeMetric value. Default value is null
      See Also:
        Bubble Chart Example

    - #### setPrintZoomChart

          public void setPrintZoomChart(boolean printZoomChart)

      Should the `zoom chart` be printed with this `FacetChart`? If `true`, then the SVG string returned by `DrawPane.getSvgString()` will include the zoom chart's SVG as well.

      Note : This is an advanced setting

      Parameters:
        `printZoomChart` - New printZoomChart value. Default value is true
      See Also:
        `Printing overview and related methods`

    - #### getPrintZoomChart

          public boolean getPrintZoomChart()

      Should the `zoom chart` be printed with this `FacetChart`? If `true`, then the SVG string returned by `DrawPane.getSvgString()` will include the zoom chart's SVG as well.
      Returns:
        Current printZoomChart value. Default value is true
      See Also:
        `Printing overview and related methods`

    - #### setProbabilityMetric

          public void setProbabilityMetric(java.lang.String probabilityMetric)
                                    throws java.lang.IllegalStateException

      The "id" of the metric facet value that assigns a probability to each combination of facets and their values. Each probability must be a non-negative number. These probabilities are used by all methods of FacetChart that calculate statistical values (e.g. `getMean()` and `getStdDev()`). The default value of this property is null which causes the FacetChart to assign probabilities to the data records according to a uniform probability distribution.

      Note that the FacetChart handles cases where the sum total of all probabilities in the `data` is not exactly one by scaling the assigned probabilities.

      Parameters:
        `probabilityMetric` - New probabilityMetric value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `getMean(java.lang.String)`, `getMedian(java.lang.String)`, `getStdDev(java.lang.String, boolean)`, `getVariance(java.lang.String, boolean)`

    - #### getProbabilityMetric

          public java.lang.String getProbabilityMetric()

      The "id" of the metric facet value that assigns a probability to each combination of facets and their values. Each probability must be a non-negative number. These probabilities are used by all methods of FacetChart that calculate statistical values (e.g. `getMean()` and `getStdDev()`). The default value of this property is null which causes the FacetChart to assign probabilities to the data records according to a uniform probability distribution.

      Note that the FacetChart handles cases where the sum total of all probabilities in the `data` is not exactly one by scaling the assigned probabilities.

      Returns:
        Current probabilityMetric value. Default value is null
      See Also:
        `getMean(java.lang.String)`, `getMedian(java.lang.String)`, `getStdDev(java.lang.String, boolean)`, `getVariance(java.lang.String, boolean)`

    - #### setProportional

          public void setProportional(java.lang.Boolean proportional)

      For multi-facet charts, render data values as a proportion of the sum of all data values that have the same label.

      Gradation labels will be switched to show percentage instead of absolute values.

      This setting is valid only for Column, Bar, Area and Radar chart types and only in `stacked` mode. Stacked columns will be as tall as the chart rect and stacked bars will be as wide as the chart rect. Area and Radar charts will be completely filled except for facet values where all values are 0.
      If this method is called after the component has been drawn/initialized: Setter for `proportional`.

      Parameters:
        `proportional` - Whether the chart should now use proportional mode. Default value is null
      See Also:
        Multi-Series Chart Example

    - #### getProportional

          public java.lang.Boolean getProportional()

      For multi-facet charts, render data values as a proportion of the sum of all data values that have the same label.

      Gradation labels will be switched to show percentage instead of absolute values.

      This setting is valid only for Column, Bar, Area and Radar chart types and only in `stacked` mode. Stacked columns will be as tall as the chart rect and stacked bars will be as wide as the chart rect. Area and Radar charts will be completely filled except for facet values where all values are 0.

      Returns:
        Current proportional value. Default value is null
      See Also:
        Multi-Series Chart Example

    - #### setProportionalAxisLabel

          public void setProportionalAxisLabel(java.lang.String proportionalAxisLabel)
                                        throws java.lang.IllegalStateException

      Default title for the value axis label when the chart is in `proportional rendering mode`. This title will be used unless the `legend facet` defines a `proportionalTitle`.
      Parameters:
        `proportionalAxisLabel` - New proportionalAxisLabel value. Default value is "Percent"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getProportionalAxisLabel

          public java.lang.String getProportionalAxisLabel()

      Default title for the value axis label when the chart is in `proportional rendering mode`. This title will be used unless the `legend facet` defines a `proportionalTitle`.
      Returns:
        Current proportionalAxisLabel value. Default value is "Percent"

    - #### setRadarBackgroundProperties

          public void setRadarBackgroundProperties(DrawOval radarBackgroundProperties)
                                            throws java.lang.IllegalStateException

      Properties for radar background
      Parameters:
        `radarBackgroundProperties` - New radarBackgroundProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getRadarBackgroundProperties

          public DrawOval getRadarBackgroundProperties()

      Properties for radar background
      Returns:
        Current radarBackgroundProperties value. Default value is null

    - #### setRadarRotateLabels

          public void setRadarRotateLabels(LabelRotationMode radarRotateLabels)
                                    throws java.lang.IllegalStateException

      This property controls whether to rotate the labels on the `data label facet` of radar or `stacked` pie charts so that each label is parallel to its radial gradation (these are the labels that appear around the perimeter). For now, "auto" means the same thing as "always" - but this may change in the future if heuristics are added to determine when the affected labels are likely to overlap and not be legible. If rotateLabels is "never" then the labels will not be rotated.

      Parameters:
        `radarRotateLabels` - New radarRotateLabels value. Default value is "auto"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setRotateLabels(com.smartgwt.client.types.LabelRotationMode)`, `setRadialLabelOffset(java.lang.Integer)`

    - #### getRadarRotateLabels

          public LabelRotationMode getRadarRotateLabels()

      This property controls whether to rotate the labels on the `data label facet` of radar or `stacked` pie charts so that each label is parallel to its radial gradation (these are the labels that appear around the perimeter). For now, "auto" means the same thing as "always" - but this may change in the future if heuristics are added to determine when the affected labels are likely to overlap and not be legible. If rotateLabels is "never" then the labels will not be rotated.

      Returns:
        Current radarRotateLabels value. Default value is "auto"
      See Also:
        `getRotateLabels()`, `getRadialLabelOffset()`

    - #### setRadialLabelOffset

          public void setRadialLabelOffset(java.lang.Integer radialLabelOffset)
                                    throws java.lang.IllegalStateException

      Distance in pixels that radial labels are offset from the outside of the circle. Default can vary depending upon `ChartType` and `radarRotateLabels`.
      Parameters:
        `radialLabelOffset` - New radialLabelOffset value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getRadialLabelOffset

          public java.lang.Integer getRadialLabelOffset()

      Distance in pixels that radial labels are offset from the outside of the circle. Default can vary depending upon `ChartType` and `radarRotateLabels`.
      Returns:
        Current radialLabelOffset value. Default value is null

    - #### setRegressionLineProperties

          public void setRegressionLineProperties(DrawLine regressionLineProperties)
                                           throws java.lang.IllegalStateException

      Properties for the `regression line`.
      Parameters:
        `regressionLineProperties` - New regressionLineProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getRegressionLineProperties

          public DrawLine getRegressionLineProperties()

      Properties for the `regression line`.
      Returns:
        Current regressionLineProperties value. Default value is null

    - #### setRegressionLineType

          public void setRegressionLineType(RegressionLineType regressionLineType)

      Regression algorithm used for the `regression line`.
      If this method is called after the component has been drawn/initialized: Setter for `RegressionLineType`.
      Parameters:
        `regressionLineType` - New value for this.regressionLineType. Default value is "line"

    - #### getRegressionLineType

          public RegressionLineType getRegressionLineType()

      Regression algorithm used for the `regression line`.
      Returns:
        Current regressionLineType value. Default value is "line"

    - #### setRegressionPolynomialDegree

          public void setRegressionPolynomialDegree(int regressionPolynomialDegree)

      For scatter plots only, specify the degree of polynomial to use for any polynomial regression that is calculated.
      If this method is called after the component has been drawn/initialized: Setter for `regressionPolynomialDegree`.
      Parameters:
        `regressionPolynomialDegree` - New value for this.regressionPolynomialDegree. Default value is 3

    - #### getRegressionPolynomialDegree

          public int getRegressionPolynomialDegree()

      For scatter plots only, specify the degree of polynomial to use for any polynomial regression that is calculated.
      Returns:
        Current regressionPolynomialDegree value. Default value is 3

    - #### setRotateLabels

          public void setRotateLabels(LabelRotationMode rotateLabels)
                               throws java.lang.IllegalStateException

      This property controls whether to rotate the labels on the X-axis. If rotateLabels is "always" then all of the data labels will be rotated by 90 degrees. If rotateLabels is "auto" (the default) then the labels will only be rotated if it is required in order for the labels to be legible and non-overlapping. If rotateLabels is "never" then the labels will not be rotated.

      Note that automatic rotation is incompatible with setting a cluster-size-minimum customizer using `FacetChart.setMinClusterSizeMapper()`, so that `LabelRotationMode.AUTO` will be treated as `LabelRotationMode.NEVER` if that method has been specified on a column, bar, or histogram chart.

      Parameters:
        `rotateLabels` - New rotateLabels value. Default value is "auto"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setRadarRotateLabels(com.smartgwt.client.types.LabelRotationMode)`

    - #### getRotateLabels

          public LabelRotationMode getRotateLabels()

      This property controls whether to rotate the labels on the X-axis. If rotateLabels is "always" then all of the data labels will be rotated by 90 degrees. If rotateLabels is "auto" (the default) then the labels will only be rotated if it is required in order for the labels to be legible and non-overlapping. If rotateLabels is "never" then the labels will not be rotated.

      Note that automatic rotation is incompatible with setting a cluster-size-minimum customizer using `FacetChart.setMinClusterSizeMapper()`, so that `LabelRotationMode.AUTO` will be treated as `LabelRotationMode.NEVER` if that method has been specified on a column, bar, or histogram chart.

      Returns:
        Current rotateLabels value. Default value is "auto"
      See Also:
        `getRadarRotateLabels()`

    - #### setScaleEndColor

          public void setScaleEndColor(java.lang.String scaleEndColor)

      The ending color of the color scale when the data points are colored according to a `color scale metric`. If neither this property nor the `scaleStartColor` is set then the whole color range is used by default.

      Note that using CSS color shortcuts (e.g. "lightblue") is not allowed for this property.
      If this method is called after the component has been drawn/initialized: Setter for `scaleEndColor`.

      Parameters:
        `scaleEndColor` - The new end color for the color scale. Default value is null
      See Also:
        `CSSColor`, Color Scale Chart Example

    - #### getScaleEndColor

          public java.lang.String getScaleEndColor()

      The ending color of the color scale when the data points are colored according to a `color scale metric`. If neither this property nor the `scaleStartColor` is set then the whole color range is used by default.

      Note that using CSS color shortcuts (e.g. "lightblue") is not allowed for this property.

      Returns:
        Current scaleEndColor value. Default value is null
      See Also:
        `CSSColor`, Color Scale Chart Example

    - #### setScaleStartColor

          public void setScaleStartColor(java.lang.String scaleStartColor)

      The starting color of the color scale when the data points are colored according to a `color scale metric`. If neither this property nor the `scaleEndColor` is set then the whole color range is used by default.

      Note that using CSS color shortcuts (e.g. "lightblue") is not allowed for this property.
      If this method is called after the component has been drawn/initialized: Setter for `scaleStartColor`.

      Parameters:
        `scaleStartColor` - The new start color for the color scale. Default value is null
      See Also:
        `CSSColor`, Color Scale Chart Example

    - #### getScaleStartColor

          public java.lang.String getScaleStartColor()

      The starting color of the color scale when the data points are colored according to a `color scale metric`. If neither this property nor the `scaleEndColor` is set then the whole color range is used by default.

      Note that using CSS color shortcuts (e.g. "lightblue") is not allowed for this property.

      Returns:
        Current scaleStartColor value. Default value is null
      See Also:
        `CSSColor`, Color Scale Chart Example

    - #### setShadowProperties

          public void setShadowProperties(DrawOval shadowProperties)
                                   throws java.lang.IllegalStateException

      Properties for shadows.
      Parameters:
        `shadowProperties` - New shadowProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getShadowProperties

          public DrawOval getShadowProperties()

      Properties for shadows.
      Returns:
        Current shadowProperties value. Default value is null

    - #### setShowBubbleLegendPerShape

          public void setShowBubbleLegendPerShape(boolean showBubbleLegendPerShape)
                                           throws java.lang.IllegalStateException

      Whether to draw multiple bubble legends horizontally stacked to the right of the chart, one per shape type.

      Note that this setting has no effect if `useMultiplePointShapes` is disabled.

      Parameters:
        `showBubbleLegendPerShape` - New showBubbleLegendPerShape value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowBubbleLegendPerShape

          public boolean getShowBubbleLegendPerShape()

      Whether to draw multiple bubble legends horizontally stacked to the right of the chart, one per shape type.

      Note that this setting has no effect if `useMultiplePointShapes` is disabled.

      Returns:
        Current showBubbleLegendPerShape value. Default value is false

    - #### setShowChartRect

          public void setShowChartRect(java.lang.Boolean showChartRect)
                                throws java.lang.IllegalStateException

      Whether to show a rectangular shape around the area of the chart where data is plotted.
      Parameters:
        `showChartRect` - New showChartRect value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowChartRect

          public java.lang.Boolean getShowChartRect()

      Whether to show a rectangular shape around the area of the chart where data is plotted.
      Returns:
        Current showChartRect value. Default value is false

    - #### setShowColorScaleLegend

          public void setShowColorScaleLegend(java.lang.Boolean showColorScaleLegend)
                                       throws java.lang.IllegalStateException

      Whether to show an additional legend underneath the chart to indicate color values. The default is `true` if a valid `colorScaleMetric` is specified.
      Parameters:
        `showColorScaleLegend` - New showColorScaleLegend value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setScaleStartColor(java.lang.String)`, `setScaleEndColor(java.lang.String)`, Color Scale Chart Example

    - #### getShowColorScaleLegend

          public java.lang.Boolean getShowColorScaleLegend()

      Whether to show an additional legend underneath the chart to indicate color values. The default is `true` if a valid `colorScaleMetric` is specified.
      Returns:
        Current showColorScaleLegend value. Default value is null
      See Also:
        `getScaleStartColor()`, `getScaleEndColor()`, Color Scale Chart Example

    - #### setShowDataAxisLabel

          public void setShowDataAxisLabel(java.lang.Boolean showDataAxisLabel)
                                    throws java.lang.IllegalStateException

      Whether to show a label for the data axis as a whole (the data axis is where labels for each data point appear). If true, `Facet.title` for the data label facet will be shown as the label.

      Automatically disabled for non-rectangular charts (eg Pie, Radar).

      Parameters:
        `showDataAxisLabel` - New showDataAxisLabel value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowDataAxisLabel

          public java.lang.Boolean getShowDataAxisLabel()

      Whether to show a label for the data axis as a whole (the data axis is where labels for each data point appear). If true, `Facet.title` for the data label facet will be shown as the label.

      Automatically disabled for non-rectangular charts (eg Pie, Radar).

      Returns:
        Current showDataAxisLabel value. Default value is null

    - #### setShowDataLabels

          public void setShowDataLabels(boolean showDataLabels)
                                 throws java.lang.IllegalStateException

      If set to `false`, data labels for values are entirely omitted.

      This property would generally only be set to `false` if several small charts are shown together and the data labels are drawn elsewhere on the screen (above an entire stack of charts, for instance) or are otherwise implicit.

      Parameters:
        `showDataLabels` - New showDataLabels value. Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowDataLabels

          public boolean getShowDataLabels()

      If set to `false`, data labels for values are entirely omitted.

      This property would generally only be set to `false` if several small charts are shown together and the data labels are drawn elsewhere on the screen (above an entire stack of charts, for instance) or are otherwise implicit.

      Returns:
        Current showDataLabels value. Default value is true

    - #### setShowDataPoints

          public void setShowDataPoints(java.lang.Boolean showDataPoints)
                                 throws java.lang.IllegalStateException

      For Line, Area, Radar, Scatter or Bubble charts, whether to show data points for each individual data value.

      If shown, the `pointClick()` and `getPointHoverHTML()` APIs can be used to create interactivity.

      Parameters:
        `showDataPoints` - New showDataPoints value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowDataPoints

          public java.lang.Boolean getShowDataPoints()

      For Line, Area, Radar, Scatter or Bubble charts, whether to show data points for each individual data value.

      If shown, the `pointClick()` and `getPointHoverHTML()` APIs can be used to create interactivity.

      Returns:
        Current showDataPoints value. Default value is false

    - #### setShowDataValues

          public void setShowDataValues(boolean showDataValues)
                                 throws java.lang.IllegalStateException

      Should data values be shown as text labels near the shape representing the value, for example, above columns of a column chart, or adjacent to points in a line chart?

      If set to false, then data values will not be shown.

      If set to true, data values will be shown unless the data density is high enough that labels will potentially overlap, in which case, data values will not be shown and hovers will be shown instead, in the same way as `showValueOnHover` shows hovers.

      Parameters:
        `showDataValues` - New showDataValues value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowDataValues

          public boolean getShowDataValues()

      Should data values be shown as text labels near the shape representing the value, for example, above columns of a column chart, or adjacent to points in a line chart?

      If set to false, then data values will not be shown.

      If set to true, data values will be shown unless the data density is high enough that labels will potentially overlap, in which case, data values will not be shown and hovers will be shown instead, in the same way as `showValueOnHover` shows hovers.

      Returns:
        Current showDataValues value. Default value is false

    - #### setShowDoughnut

          public void setShowDoughnut(java.lang.Boolean showDoughnut)
                               throws java.lang.IllegalStateException

      Whether to show a "doughnut hole" in the middle of pie charts. Defaults to whether chartType is set to "Doughnut" (shown) vs "Pie" (not shown) but can be forced on or off via `showDoughnut`.
      Parameters:
        `showDoughnut` - New showDoughnut value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowDoughnut

          public java.lang.Boolean getShowDoughnut()

      Whether to show a "doughnut hole" in the middle of pie charts. Defaults to whether chartType is set to "Doughnut" (shown) vs "Pie" (not shown) but can be forced on or off via `showDoughnut`.
      Returns:
        Current showDoughnut value. Default value is null

    - #### setShowExpectedValueLine

          public void setShowExpectedValueLine(java.lang.Boolean showExpectedValueLine)
                                        throws java.lang.IllegalStateException

      Display a line at the `mean value`.

      Note that this expected value is computed using all of the data points, pooled across all facets. The computation relies only on the values of the main value axis metric and the `probability metric`.

      See http://en.wikipedia.org/wiki/Expected_value.

      Parameters:
        `showExpectedValueLine` - New showExpectedValueLine value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowExpectedValueLine

          public java.lang.Boolean getShowExpectedValueLine()

      Display a line at the `mean value`.

      Note that this expected value is computed using all of the data points, pooled across all facets. The computation relies only on the values of the main value axis metric and the `probability metric`.

      See http://en.wikipedia.org/wiki/Expected_value.

      Returns:
        Current showExpectedValueLine value. Default value is false

    - #### setShowGradationsOverData

          public void setShowGradationsOverData(java.lang.Boolean showGradationsOverData)
                                         throws java.lang.IllegalStateException

      If set, gradation lines are drawn on top of data rather than underneath.
      Parameters:
        `showGradationsOverData` - New showGradationsOverData value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowGradationsOverData

          public java.lang.Boolean getShowGradationsOverData()

      If set, gradation lines are drawn on top of data rather than underneath.
      Returns:
        Current showGradationsOverData value. Default value is false

    - #### setShowInlineLabels

          public void setShowInlineLabels(java.lang.Boolean showInlineLabels)
                                   throws java.lang.IllegalStateException

      Causes labels for the X axis to be shown above the axis and to the right of the gradation line they label, making for a vertically more compact chart at the risk of gradation labels being partially obscured by data values. Also causes the last label to be skipped (no where to place it).
      Parameters:
        `showInlineLabels` - New showInlineLabels value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowInlineLabels

          public java.lang.Boolean getShowInlineLabels()

      Causes labels for the X axis to be shown above the axis and to the right of the gradation line they label, making for a vertically more compact chart at the risk of gradation labels being partially obscured by data values. Also causes the last label to be skipped (no where to place it).
      Returns:
        Current showInlineLabels value. Default value is false

    - #### setShowLegend

          public void setShowLegend(java.lang.Boolean showLegend)
                             throws java.lang.IllegalStateException

      The legend is automatically shown for charts that need it (generally, multi-series charts) but can be forced off by setting showLegend to false.
      Parameters:
        `showLegend` - New showLegend value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowLegend

          public java.lang.Boolean getShowLegend()

      The legend is automatically shown for charts that need it (generally, multi-series charts) but can be forced off by setting showLegend to false.
      Returns:
        Current showLegend value. Default value is null

    - #### setShowMinorTicks

          public void setShowMinorTicks(boolean showMinorTicks)

      If `ticks` are being shown, controls whether a distinction is made between major and minor tick marks.

      If minor ticks are used, by default, major ticks are used for powers of 10 and minor ticks are used for other gradations. See `majorTickGradations` for control over which ticks are rendered as major vs minor ticks.
      If this method is called after the component has been drawn/initialized: Setter for `showMinorTicks`.

      Parameters:
        `showMinorTicks` - new `showMinorTicks` value. Default value is true

    - #### getShowMinorTicks

          public boolean getShowMinorTicks()

      If `ticks` are being shown, controls whether a distinction is made between major and minor tick marks.

      If minor ticks are used, by default, major ticks are used for powers of 10 and minor ticks are used for other gradations. See `majorTickGradations` for control over which ticks are rendered as major vs minor ticks.

      Returns:
        Current showMinorTicks value. Default value is true

    - #### setShowPointSizeLegend

          public void setShowPointSizeLegend(java.lang.Boolean showPointSizeLegend)
                                      throws java.lang.IllegalStateException

      Whether to show an additional legend to the right of the chart to indicate `point size`. The default is `true` for bubble charts and `false` for all other chart types.
      Parameters:
        `showPointSizeLegend` - New showPointSizeLegend value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setPointSizeGradations(java.lang.Integer)`, `setUsePointSizeLogGradations(java.lang.Boolean)`, `setPointSizeLogGradations(float...)`, `setShowBubbleLegendPerShape(boolean)`, Bubble Chart Example

    - #### getShowPointSizeLegend

          public java.lang.Boolean getShowPointSizeLegend()

      Whether to show an additional legend to the right of the chart to indicate `point size`. The default is `true` for bubble charts and `false` for all other chart types.
      Returns:
        Current showPointSizeLegend value. Default value is null
      See Also:
        `getPointSizeGradations()`, `getUsePointSizeLogGradations()`, `getPointSizeLogGradations()`, `getShowBubbleLegendPerShape()`, Bubble Chart Example

    - #### setShowRadarGradationLabels

          public void setShowRadarGradationLabels(java.lang.Boolean showRadarGradationLabels)
                                           throws java.lang.IllegalStateException

      Whether to show gradation labels in radar charts.
      Parameters:
        `showRadarGradationLabels` - New showRadarGradationLabels value. Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowRadarGradationLabels

          public java.lang.Boolean getShowRadarGradationLabels()

      Whether to show gradation labels in radar charts.
      Returns:
        Current showRadarGradationLabels value. Default value is true

    - #### setShowRegressionLine

          public void setShowRegressionLine(java.lang.Boolean showRegressionLine)

      For scatter plots only, whether to display a regression curve that best fits the data of the two metric facet values.

      The type of regression curve used depends on the `RegressionLineType` property, which can be:

      - "line" – to draw a linear regression curve, or
      - "polynomial" – to draw a polynomial regression curve (of degree `regressionPolynomialDegree`).

      Note that the regression is computed using all of the data points and it does not depend on the values of any non-metric facets. For example, adding a legend facet will not change the regression curve.

      See http://en.wikipedia.org/wiki/Simple_linear_regression. See http://en.wikipedia.org/wiki/Polynomial_regression.
      If this method is called after the component has been drawn/initialized: Setter for `showRegressionLine`.

      Parameters:
        `showRegressionLine` - New value for this.showRegressionLine. Default value is false
      See Also:
        `setXAxisMetric(java.lang.String)`, `setYAxisMetric(java.lang.String)`, `setRegressionLineProperties(com.smartgwt.client.widgets.drawing.DrawLine)`

    - #### getShowRegressionLine

          public java.lang.Boolean getShowRegressionLine()

      For scatter plots only, whether to display a regression curve that best fits the data of the two metric facet values.

      The type of regression curve used depends on the `RegressionLineType` property, which can be:

      - "line" – to draw a linear regression curve, or
      - "polynomial" – to draw a polynomial regression curve (of degree `regressionPolynomialDegree`).

      Note that the regression is computed using all of the data points and it does not depend on the values of any non-metric facets. For example, adding a legend facet will not change the regression curve.

      See http://en.wikipedia.org/wiki/Simple_linear_regression. See http://en.wikipedia.org/wiki/Polynomial_regression.

      Returns:
        Current showRegressionLine value. Default value is false
      See Also:
        `getXAxisMetric()`, `getYAxisMetric()`, `getRegressionLineProperties()`

    - #### setShowScatterLines

          public void setShowScatterLines(java.lang.Boolean showScatterLines)

      Whether to draw lines between adjacent data points in "Scatter" plots. See also `DataLineType` for enabling smoothing.
      If this method is called after the component has been drawn/initialized: Method to change the current `showScatterLines`. Will redraw the chart if drawn.
      Parameters:
        `showScatterLines` - whether to draw lines between adjacent data points in "Scatter" plots. Default value is false
      See Also:
        Scatter Plot Example

    - #### getShowScatterLines

          public java.lang.Boolean getShowScatterLines()

      Whether to draw lines between adjacent data points in "Scatter" plots. See also `DataLineType` for enabling smoothing.
      Returns:
        Current showScatterLines value. Default value is false
      See Also:
        Scatter Plot Example

    - #### setShowShadows

          public void setShowShadows(java.lang.Boolean showShadows)
                              throws java.lang.IllegalStateException

      Whether to automatically show shadows for various charts.
      Parameters:
        `showShadows` - New showShadows value. Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowShadows

          public java.lang.Boolean getShowShadows()

      Whether to automatically show shadows for various charts.
      Returns:
        Current showShadows value. Default value is true

    - #### setShowStandardDeviationLines

          public void setShowStandardDeviationLines(java.lang.Boolean showStandardDeviationLines)
                                             throws java.lang.IllegalStateException

      Display multiple `standard deviations` away from the mean as lines. The exact deviations to display can be customized with `standardDeviations`.

      Note that these standard deviations are computed using all of the data points, pooled across all facets. The computation relies only on the values of the main value axis metric and the `probability metric`.

      See http://en.wikipedia.org/wiki/Standard_deviation.

      Parameters:
        `showStandardDeviationLines` - New showStandardDeviationLines value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowStandardDeviationLines

          public java.lang.Boolean getShowStandardDeviationLines()

      Display multiple `standard deviations` away from the mean as lines. The exact deviations to display can be customized with `standardDeviations`.

      Note that these standard deviations are computed using all of the data points, pooled across all facets. The computation relies only on the values of the main value axis metric and the `probability metric`.

      See http://en.wikipedia.org/wiki/Standard_deviation.

      Returns:
        Current showStandardDeviationLines value. Default value is false

    - #### setShowStatisticsOverData

          public void setShowStatisticsOverData(java.lang.Boolean showStatisticsOverData)
                                         throws java.lang.IllegalStateException

      If set, the `mean line`, `standard deviation lines`, `standard deviation bands`, and `regression curves` are drawn on top of the data rather than underneath.
      Parameters:
        `showStatisticsOverData` - New showStatisticsOverData value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowStatisticsOverData

          public java.lang.Boolean getShowStatisticsOverData()

      If set, the `mean line`, `standard deviation lines`, `standard deviation bands`, and `regression curves` are drawn on top of the data rather than underneath.
      Returns:
        Current showStatisticsOverData value. Default value is false

    - #### setShowTitle

          public void setShowTitle(java.lang.Boolean showTitle)

      Whether to show a title.
      Parameters:
        `showTitle` - New showTitle value. Default value is true

    - #### getShowTitle

          public java.lang.Boolean getShowTitle()

      Whether to show a title.
      Returns:
        Current showTitle value. Default value is true

    - #### setShowValueAxisLabel

          public void setShowValueAxisLabel(java.lang.Boolean showValueAxisLabel)
                                     throws java.lang.IllegalStateException

      Whether to show the `valueTitle` (or, in the case of `proportional rendering mode`, the `proportionalAxisLabel`) as a label on the value axis.

      Automatically disabled for non-rectangular charts (eg Pie, Radar).

      Parameters:
        `showValueAxisLabel` - New showValueAxisLabel value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowValueAxisLabel

          public java.lang.Boolean getShowValueAxisLabel()

      Whether to show the `valueTitle` (or, in the case of `proportional rendering mode`, the `proportionalAxisLabel`) as a label on the value axis.

      Automatically disabled for non-rectangular charts (eg Pie, Radar).

      Returns:
        Current showValueAxisLabel value. Default value is null

    - #### setShowValueOnHover

          public void setShowValueOnHover(java.lang.Boolean showValueOnHover)
                                   throws java.lang.IllegalStateException

      Shows the value of the nearest data value in a floating label whenever the mouse moves within the main chart area. The visual element representing the data value will also be emphasized by brightening or highlighting it (appearance differs by chart type).

      Calculates nearest value based on `getNearestDrawnValue()`.

      The data value will be formatted using `setDataValueFormatter()`. The label's appearance is controlled by `hoverLabelProperties`.

      Parameters:
        `showValueOnHover` - New showValueOnHover value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowValueOnHover

          public java.lang.Boolean getShowValueOnHover()

      Shows the value of the nearest data value in a floating label whenever the mouse moves within the main chart area. The visual element representing the data value will also be emphasized by brightening or highlighting it (appearance differs by chart type).

      Calculates nearest value based on `getNearestDrawnValue()`.

      The data value will be formatted using `setDataValueFormatter()`. The label's appearance is controlled by `hoverLabelProperties`.

      Returns:
        Current showValueOnHover value. Default value is null

    - #### setShowXTicks

          public void setShowXTicks(boolean showXTicks)

      When set, ticks are shown for the X (horizontal) axis for Scatter plots or Bar charts.
      If this method is called after the component has been drawn/initialized: Setter for `showXTicks`.
      Parameters:
        `showXTicks` - new `showXTicks` value. Default value is false
      See Also:
        `setShowYTicks(boolean)`, Custom Date Ticks Example

    - #### getShowXTicks

          public boolean getShowXTicks()

      When set, ticks are shown for the X (horizontal) axis for Scatter plots or Bar charts.
      Returns:
        Current showXTicks value. Default value is false
      See Also:
        `getShowYTicks()`, Custom Date Ticks Example

    - #### setShowYTicks

          public void setShowYTicks(boolean showYTicks)

      When set, ticks are shown for the Y (vertical) axis if it's a value axis.

      Normally, ticks are not shown for the primary axis, since `gradation lines` show value demarcations. Gradation lines are always show for `extra value axes` in multi-axis charts (since there are no gradation lines for the additional axes).

      `showXTicks` can be used to control whether ticks are shown for the horizontal axis, for certain chart types. See also `majorTickGradations` for control of which ticks are shown as major vs minor ticks.
      If this method is called after the component has been drawn/initialized: Setter for `showYTicks`.

      Parameters:
        `showYTicks` - new `showYTicks` value. Default value is false

    - #### getShowYTicks

          public boolean getShowYTicks()

      When set, ticks are shown for the Y (vertical) axis if it's a value axis.

      Normally, ticks are not shown for the primary axis, since `gradation lines` show value demarcations. Gradation lines are always show for `extra value axes` in multi-axis charts (since there are no gradation lines for the additional axes).

      `showXTicks` can be used to control whether ticks are shown for the horizontal axis, for certain chart types. See also `majorTickGradations` for control of which ticks are shown as major vs minor ticks.

      Returns:
        Current showYTicks value. Default value is false

    - #### setStacked

          public void setStacked(java.lang.Boolean stacked)

      Whether to use stacking for charts where this makes sense (column, area, pie, line and radar charts). If stacked is not set and two facets are supplied, clustering is assumed. If null (the default), line charts will be unstacked, and others will be stacked.
      If this method is called after the component has been drawn/initialized: Method to change `stacked`. Use null to apply a default value for the current `chartType`.
      Parameters:
        `stacked` - new value. Default value is null

    - #### getStacked

          public java.lang.Boolean getStacked()

      Whether to use stacking for charts where this makes sense (column, area, pie, line and radar charts). If stacked is not set and two facets are supplied, clustering is assumed. If null (the default), line charts will be unstacked, and others will be stacked.
      Returns:
        Current stacked value. Default value is null

    - #### setStandardDeviationBandProperties

          public void setStandardDeviationBandProperties(DrawItem... standardDeviationBandProperties)
                                                  throws java.lang.IllegalStateException

      An Array of DrawRect properties to specify the bands between the `standard deviation lines`. The length of the Array must be one less than the length of the `standardDeviations` Array.

      Having no band between certain standard deviations from the mean can be specified by having a null element at the corresponding index of this Array.

      Note that if `useSymmetricStandardDeviations` is set then for each standard deviation band that is drawn a corresponding band will also be drawn on the opposite side of the mean line.

      Parameters:
        `standardDeviationBandProperties` - New standardDeviationBandProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### setStandardDeviationLineProperties

          public void setStandardDeviationLineProperties(DrawItem standardDeviationLineProperties)
                                                  throws java.lang.IllegalStateException

      Properties for the `standard deviation lines`.

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

      Parameters:
        `standardDeviationLineProperties` - New standardDeviationLineProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getStandardDeviationLineProperties

          public DrawItem getStandardDeviationLineProperties()

      Properties for the `standard deviation lines`.

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

      Returns:
        Current standardDeviationLineProperties value. Default value is null

    - #### setStandardDeviations

          public void setStandardDeviations(float... standardDeviations)
                                     throws java.lang.IllegalStateException

      When `showStandardDeviationLines` is set, the number of standard deviation lines drawn and their respective standard deviation away from the mean are specified by this property. The default is to display lines corresponding to the mean plus or minus one standard deviation.

      Note that having zero in this list of standard deviations is identical to drawing a line at the mean.

      For example assume that chart1 and chart2 both plot data with mean 1 and standard deviation 0.1. chart1 will draw a blue line at the value 1 and two red lines at the values 0.7 and 1.2. chart2 will draw three red lines at values 0.9, 1.0, and 1.1.

            DrawLine blueLine = new DrawLine(),
                redLine = new DrawLine();
            blueLine.setLineColor("blue");
            redLine.setLineColor("red");

            FacetChart chart1 = new FacetChart();
            chart1.setID("chart1");
            chart1.setStandardDeviations(new Float[] { -3f, 2f });
            chart1.setShowExpectedValueLine(true);
            chart1.setShowStandardDeviationLines(true);
            chart1.setExpectedValueLineProperties(blueLine);
            chart1.setStandardDeviationLineProperties(redLine);
            chart1.setUseSymmetricStandardDeviations(false);
            // ...

            FacetChart chart2 = new FacetChart();
            chart2.setID("chart2");
            chart2.setStandardDeviations(new Float[] { -1f, 0f, 1f });
            chart2.setShowExpectedValueLine(false);
            chart2.setShowStandardDeviationLines(true);
            chart2.setExpectedValueLineProperties(blueLine);
            chart2.setStandardDeviationLineProperties(redLine);
            chart2.setUseSymmetricStandardDeviations(false);
            // ...

            chart1.draw();
            chart2.draw();

      Parameters:
        `standardDeviations` - New standardDeviations value. Default value is [-1, 1]
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getStandardDeviations

          public float[] getStandardDeviations()

      When `showStandardDeviationLines` is set, the number of standard deviation lines drawn and their respective standard deviation away from the mean are specified by this property. The default is to display lines corresponding to the mean plus or minus one standard deviation.

      Note that having zero in this list of standard deviations is identical to drawing a line at the mean.

      For example assume that chart1 and chart2 both plot data with mean 1 and standard deviation 0.1. chart1 will draw a blue line at the value 1 and two red lines at the values 0.7 and 1.2. chart2 will draw three red lines at values 0.9, 1.0, and 1.1.

            DrawLine blueLine = new DrawLine(),
                redLine = new DrawLine();
            blueLine.setLineColor("blue");
            redLine.setLineColor("red");

            FacetChart chart1 = new FacetChart();
            chart1.setID("chart1");
            chart1.setStandardDeviations(new Float[] { -3f, 2f });
            chart1.setShowExpectedValueLine(true);
            chart1.setShowStandardDeviationLines(true);
            chart1.setExpectedValueLineProperties(blueLine);
            chart1.setStandardDeviationLineProperties(redLine);
            chart1.setUseSymmetricStandardDeviations(false);
            // ...

            FacetChart chart2 = new FacetChart();
            chart2.setID("chart2");
            chart2.setStandardDeviations(new Float[] { -1f, 0f, 1f });
            chart2.setShowExpectedValueLine(false);
            chart2.setShowStandardDeviationLines(true);
            chart2.setExpectedValueLineProperties(blueLine);
            chart2.setStandardDeviationLineProperties(redLine);
            chart2.setUseSymmetricStandardDeviations(false);
            // ...

            chart1.draw();
            chart2.draw();

      Returns:
        Current standardDeviations value. Default value is [-1, 1]

    - #### setStyleName

          public void setStyleName(java.lang.String styleName)

      Default styleName for the chart.
      Overrides:
        `setStyleName` in class `Canvas`
      Parameters:
        `styleName` - New styleName value. Default value is "scChart"
      See Also:
        `CSSStyleName`

    - #### getStyleName

          public java.lang.String getStyleName()

      Default styleName for the chart.
      Overrides:
        `getStyleName` in class `Canvas`
      Returns:
        Current styleName value. Default value is "scChart"
      See Also:
        `CSSStyleName`

    - #### setTickLength

          public void setTickLength(int tickLength)

      Length of the tick marks used when either `showXTicks` or `showYTicks` is enabled, or when `extra value axes` are in use.

      If minor tick marks are also shown, their length is controlled by `minorTickLength`.
      If this method is called after the component has been drawn/initialized: Setter for `tickLength`.

      Parameters:
        `tickLength` - new `tickLength` value. Default value is 5

    - #### getTickLength

          public int getTickLength()

      Length of the tick marks used when either `showXTicks` or `showYTicks` is enabled, or when `extra value axes` are in use.

      If minor tick marks are also shown, their length is controlled by `minorTickLength`.

      Returns:
        Current tickLength value. Default value is 5

    - #### setTickMarkToValueAxisMargin

          public void setTickMarkToValueAxisMargin(int tickMarkToValueAxisMargin)
                                            throws java.lang.IllegalStateException

      Margin between the tick marks and the labels of the `extra value axes`.
      Parameters:
        `tickMarkToValueAxisMargin` - New tickMarkToValueAxisMargin value. Default value is 7
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTickMarkToValueAxisMargin

          public int getTickMarkToValueAxisMargin()

      Margin between the tick marks and the labels of the `extra value axes`.
      Returns:
        Current tickMarkToValueAxisMargin value. Default value is 7

    - #### setTitle

          public void setTitle(java.lang.String title)

      Title for the chart as a whole.
      Overrides:
        `setTitle` in class `Canvas`
      Parameters:
        `title` - New title value. Default value is null

    - #### getTitle

          public java.lang.String getTitle()

      Title for the chart as a whole.
      Overrides:
        `getTitle` in class `Canvas`
      Returns:
        Current title value. Default value is null

    - #### setTitleAlign

          public void setTitleAlign(TitleAlign titleAlign)

      Horizontal alignment of the chart's `title`.
      Parameters:
        `titleAlign` - New titleAlign value. Default value is "center"

    - #### getTitleAlign

          public TitleAlign getTitleAlign()

      Horizontal alignment of the chart's `title`.
      Returns:
        Current titleAlign value. Default value is "center"

    - #### setTitleBackgroundProperties

          public void setTitleBackgroundProperties(DrawLabel titleBackgroundProperties)

      Properties for title background (if being drawn).
      Parameters:
        `titleBackgroundProperties` - New titleBackgroundProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getTitleBackgroundProperties

          public DrawLabel getTitleBackgroundProperties()

      Properties for title background (if being drawn).
      Returns:
        Current titleBackgroundProperties value. Default value is null

    - #### setTitleBoundaryProperties

          public void setTitleBoundaryProperties(DrawLine titleBoundaryProperties)
                                          throws java.lang.IllegalStateException

      Properties for bottom boundary of the title area, when there is already an outer container around the whole chart. see `drawTitleBoundary`
      Parameters:
        `titleBoundaryProperties` - New titleBoundaryProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getTitleBoundaryProperties

          public DrawLine getTitleBoundaryProperties()

      Properties for bottom boundary of the title area, when there is already an outer container around the whole chart. see `drawTitleBoundary`
      Returns:
        Current titleBoundaryProperties value. Default value is null

    - #### setTitlePadding

          public void setTitlePadding(java.lang.Boolean titlePadding)

      if aligning the title left or right, the amount of space before (for left aligned) or after (for right aligned) to pad the title from the border edge
      Parameters:
        `titlePadding` - New titlePadding value. Default value is null

    - #### getTitlePadding

          public java.lang.Boolean getTitlePadding()

      if aligning the title left or right, the amount of space before (for left aligned) or after (for right aligned) to pad the title from the border edge
      Returns:
        Current titlePadding value. Default value is null

    - #### setTitleProperties

          public void setTitleProperties(DrawLabel titleProperties)

      Properties for title label.
      Parameters:
        `titleProperties` - New titleProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getTitleProperties

          public DrawLabel getTitleProperties()

      Properties for title label.
      Returns:
        Current titleProperties value. Default value is null

    - #### setTitleRectHeight

          public void setTitleRectHeight(int titleRectHeight)

      The height of the bordered rect around the title - defaults to 0 (assuming no border)
      Parameters:
        `titleRectHeight` - New titleRectHeight value. Default value is 5

    - #### getTitleRectHeight

          public int getTitleRectHeight()

      The height of the bordered rect around the title - defaults to 0 (assuming no border)
      Returns:
        Current titleRectHeight value. Default value is 5

    - #### setUseAutoGradients

          public void setUseAutoGradients(java.lang.Boolean useAutoGradients)
                                   throws java.lang.IllegalStateException

      Causes the chart to use the colors specified in `dataColors` but specify chart-specific gradients based on the primary data color per chart type.
      Parameters:
        `useAutoGradients` - New useAutoGradients value. Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getUseAutoGradients

          public java.lang.Boolean getUseAutoGradients()

      Causes the chart to use the colors specified in `dataColors` but specify chart-specific gradients based on the primary data color per chart type.
      Returns:
        Current useAutoGradients value. Default value is true

    - #### setUseLogGradations

          public void setUseLogGradations(java.lang.Boolean useLogGradations)
                                   throws java.lang.IllegalStateException

      Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening lines. Gradations also begin and end on an order of magnitude. For example, 1,2,4,6,8,10,20,40,60,80,100.

      Default gradations can be overridden via `logBase` and `logGradations`.

      Parameters:
        `useLogGradations` - New useLogGradations value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getUseLogGradations

          public java.lang.Boolean getUseLogGradations()

      Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening lines. Gradations also begin and end on an order of magnitude. For example, 1,2,4,6,8,10,20,40,60,80,100.

      Default gradations can be overridden via `logBase` and `logGradations`.

      Returns:
        Current useLogGradations value. Default value is false

    - #### setUseMultiplePointShapes

          public void setUseMultiplePointShapes(java.lang.Boolean useMultiplePointShapes)

      Whether the chart should use multiple shapes to show data points. If set to `true` then the chart is allowed to use all `supported shapes`: circles, squares, diamonds, and triangles. If set to `false` then just the first supported shape (circles, for example) will be used. The default is `false` for bubble charts and `color scale charts` and `true` for all other chart types.
      If this method is called after the component has been drawn/initialized: Setter for `useMultiplePointShapes`.
      Parameters:
        `useMultiplePointShapes` - Whether the chart should now use multiple shapes to show data points. Default value is null
      See Also:
        Bubble Chart Example

    - #### getUseMultiplePointShapes

          public java.lang.Boolean getUseMultiplePointShapes()

      Whether the chart should use multiple shapes to show data points. If set to `true` then the chart is allowed to use all `supported shapes`: circles, squares, diamonds, and triangles. If set to `false` then just the first supported shape (circles, for example) will be used. The default is `false` for bubble charts and `color scale charts` and `true` for all other chart types.
      Returns:
        Current useMultiplePointShapes value. Default value is null
      See Also:
        Bubble Chart Example

    - #### setUsePointSizeLogGradations

          public void setUsePointSizeLogGradations(java.lang.Boolean usePointSizeLogGradations)
                                            throws java.lang.IllegalStateException

      Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening values, for the `pointSizeMetric` values displayed in the `point size legend`. Gradations also begin and end on an order of magnitude. For example, 1, 2, 4, 6, 8, 10, 20, 40, 60, 80, 100.

      Default gradations can be overridden via `pointSizeLogBase` and `pointSizeLogGradations`.

      Parameters:
        `usePointSizeLogGradations` - New usePointSizeLogGradations value. Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setUseLogGradations(java.lang.Boolean)`

    - #### getUsePointSizeLogGradations

          public java.lang.Boolean getUsePointSizeLogGradations()

      Whether to use classic logarithmic gradations, where each order of magnitude is shown as a gradation as well as a few intervening values, for the `pointSizeMetric` values displayed in the `point size legend`. Gradations also begin and end on an order of magnitude. For example, 1, 2, 4, 6, 8, 10, 20, 40, 60, 80, 100.

      Default gradations can be overridden via `pointSizeLogBase` and `pointSizeLogGradations`.

      Returns:
        Current usePointSizeLogGradations value. Default value is false
      See Also:
        `getUseLogGradations()`

    - #### setUseSymmetricStandardDeviations

          public void setUseSymmetricStandardDeviations(java.lang.Boolean useSymmetricStandardDeviations)
                                                 throws java.lang.IllegalStateException

      Whether to display both the positive and negative of the `standard deviations`.
      Parameters:
        `useSymmetricStandardDeviations` - New useSymmetricStandardDeviations value. Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getUseSymmetricStandardDeviations

          public java.lang.Boolean getUseSymmetricStandardDeviations()

      Whether to display both the positive and negative of the `standard deviations`.
      Returns:
        Current useSymmetricStandardDeviations value. Default value is true

    - #### setValueAxisLabelProperties

          public void setValueAxisLabelProperties(DrawLabel valueAxisLabelProperties)

      Properties for labels of value axis.
      Parameters:
        `valueAxisLabelProperties` - New valueAxisLabelProperties value. Default value is null
      See Also:
        `SGWTProperties`

    - #### getValueAxisLabelProperties

          public DrawLabel getValueAxisLabelProperties()

      Properties for labels of value axis.
      Returns:
        Current valueAxisLabelProperties value. Default value is null

    - #### setValueAxisMargin

          public void setValueAxisMargin(int valueAxisMargin)
                                  throws java.lang.IllegalStateException

      Margin between `multiple value axes`.
      Parameters:
        `valueAxisMargin` - New valueAxisMargin value. Default value is 10
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getValueAxisMargin

          public int getValueAxisMargin()

      Margin between `multiple value axes`.
      Returns:
        Current valueAxisMargin value. Default value is 10

    - #### setValueLineProperties

          public void setValueLineProperties(DrawLine valueLineProperties)
                                      throws java.lang.IllegalStateException

      Properties for a "value line" - a line shows where a particular discrete value is placed, eg, vertical lines connecting points of a line chart to the X axis, or radial lines in a Radar chart.
      Parameters:
        `valueLineProperties` - New valueLineProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getValueLineProperties

          public DrawLine getValueLineProperties()

      Properties for a "value line" - a line shows where a particular discrete value is placed, eg, vertical lines connecting points of a line chart to the X axis, or radial lines in a Radar chart.
      Returns:
        Current valueLineProperties value. Default value is null

    - #### setValueProperty

          public void setValueProperty(java.lang.String valueProperty)
                                throws java.lang.IllegalStateException

      Property in each record that holds a data value.

      Not used if there is an inline facet, see Chart.data.

      Parameters:
        `valueProperty` - New valueProperty value. Default value is "_value"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getValueProperty

          public java.lang.String getValueProperty()

      Property in each record that holds a data value.

      Not used if there is an inline facet, see Chart.data.

      Returns:
        Current valueProperty value. Default value is "_value"

    - #### setValueTitle

          public void setValueTitle(java.lang.String valueTitle)
                             throws java.lang.IllegalStateException

      A label for the data values, such as "Sales in Thousands", typically used as the label for the value axis.
      Parameters:
        `valueTitle` - New valueTitle value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getValueTitle

          public java.lang.String getValueTitle()

      A label for the data values, such as "Sales in Thousands", typically used as the label for the value axis.
      Returns:
        Current valueTitle value. Default value is null

    - #### setXAxisEndValue

          public void setXAxisEndValue(java.lang.Double xAxisEndValue)
                                throws java.lang.IllegalStateException

      For Bubble and Scatter charts only, the end value for the x-axis.

      If set to an explicit value, this will be respected. If unset, the axis end value will default to a value large enough to show the largest data point.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Parameters:
        `xAxisEndValue` - New xAxisEndValue value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setAxisEndValue(java.lang.Double)`

    - #### getXAxisEndValue

          public java.lang.Double getXAxisEndValue()

      For Bubble and Scatter charts only, the end value for the x-axis.

      If set to an explicit value, this will be respected. If unset, the axis end value will default to a value large enough to show the largest data point.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Returns:
        Current xAxisEndValue value. Default value is null
      See Also:
        `getAxisEndValue()`

    - #### setXAxisEndValue

          public void setXAxisEndValue(java.util.Date xAxisEndValue)
                                throws java.lang.IllegalStateException

      For Bubble and Scatter charts only, the end value for the x-axis.

      If set to an explicit value, this will be respected. If unset, the axis end value will default to a value large enough to show the largest data point.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Parameters:
        `xAxisEndValue` - New xAxisEndValue value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setAxisEndValue(java.lang.Double)`

    - #### getXAxisEndValueAsDate

          public java.util.Date getXAxisEndValueAsDate()

      For Bubble and Scatter charts only, the end value for the x-axis.

      If set to an explicit value, this will be respected. If unset, the axis end value will default to a value large enough to show the largest data point.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Returns:
        Current xAxisEndValue value. Default value is null
      See Also:
        `getAxisEndValue()`

    - #### setXAxisMetric

          public void setXAxisMetric(java.lang.String xAxisMetric)
                              throws java.lang.IllegalStateException

      For scatter charts only, the "id" of the metric facet value to use for the x-axis.

      The default x-axis metric is the second value of the metric facet.

      Parameters:
        `xAxisMetric` - New xAxisMetric value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getXAxisMetric

          public java.lang.String getXAxisMetric()

      For scatter charts only, the "id" of the metric facet value to use for the x-axis.

      The default x-axis metric is the second value of the metric facet.

      Returns:
        Current xAxisMetric value. Default value is null

    - #### setXAxisStartValue

          public void setXAxisStartValue(java.lang.Double xAxisStartValue)
                                  throws java.lang.IllegalStateException

      For Bubble and Scatter charts only, the start value for the x-axis.

      Defaults to 0, or to a value that makes good use of horizontal space based on `minXDataSpreadPercent`.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Parameters:
        `xAxisStartValue` - New xAxisStartValue value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setAxisStartValue(java.lang.Double)`

    - #### getXAxisStartValue

          public java.lang.Double getXAxisStartValue()

      For Bubble and Scatter charts only, the start value for the x-axis.

      Defaults to 0, or to a value that makes good use of horizontal space based on `minXDataSpreadPercent`.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Returns:
        Current xAxisStartValue value. Default value is null
      See Also:
        `getAxisStartValue()`

    - #### setXAxisStartValue

          public void setXAxisStartValue(java.util.Date xAxisStartValue)
                                  throws java.lang.IllegalStateException

      For Bubble and Scatter charts only, the start value for the x-axis.

      Defaults to 0, or to a value that makes good use of horizontal space based on `minXDataSpreadPercent`.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Parameters:
        `xAxisStartValue` - New xAxisStartValue value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setAxisStartValue(java.lang.Double)`

    - #### getXAxisStartValueAsDate

          public java.util.Date getXAxisStartValueAsDate()

      For Bubble and Scatter charts only, the start value for the x-axis.

      Defaults to 0, or to a value that makes good use of horizontal space based on `minXDataSpreadPercent`.

      If the x-axis metric is date-valued, this value should be a date (typically applies to Scatter charts only).

      Returns:
        Current xAxisStartValue value. Default value is null
      See Also:
        `getAxisStartValue()`

    - #### setYAxisLabelPadding

          public void setYAxisLabelPadding(int yAxisLabelPadding)
                                    throws java.lang.IllegalStateException

      Padding between each swatch and label pair.
      Parameters:
        `yAxisLabelPadding` - New yAxisLabelPadding value. Default value is 5
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getYAxisLabelPadding

          public int getYAxisLabelPadding()

      Padding between each swatch and label pair.
      Returns:
        Current yAxisLabelPadding value. Default value is 5

    - #### setYAxisMetric

          public void setYAxisMetric(java.lang.String yAxisMetric)
                              throws java.lang.IllegalStateException

      For scatter charts only, the "id" of the metric facet value to use for the y-axis.

      The default y-axis metric is the first value of the metric facet.

      Parameters:
        `yAxisMetric` - New yAxisMetric value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getYAxisMetric

          public java.lang.String getYAxisMetric()

      For scatter charts only, the "id" of the metric facet value to use for the y-axis.

      The default y-axis metric is the first value of the metric facet.

      Returns:
        Current yAxisMetric value. Default value is null

    - #### setZIndexMetric

          public void setZIndexMetric(java.lang.String zIndexMetric)

      Specifies the attribute in the metric facet that will define the z-ordering of the segments in a histogram chart. If the z-ordering isn't specified, it will be assigned based on data order, with the last data point ordered above the first. Relative z-ordering is only important between segments within the same data label facet, since segments that differ in their data label facet value should never overlap,

      Note that zIndex values should be integers between 0 and `maxDataZIndex`, inclusive, and don't directly map to the `DrawItem.zIndex` values of the underlying `DrawRect`s. This allows the Framework to use automatic z-ordering in the chart logic without any additional sorting or overhead that would otherwise be required.
      If this method is called after the component has been drawn/initialized: Method to change the current `zIndexMetric` - see property for more details. Will redraw the chart if drawn.

      Parameters:
        `zIndexMetric` - name of zIndex metric. Default value is null
      See Also:
        `setMetricFacetId(java.lang.String)`, `setMaxDataZIndex(java.lang.Integer)`, `getDataLabelFacet()`

    - #### getZIndexMetric

          public java.lang.String getZIndexMetric()

      Specifies the attribute in the metric facet that will define the z-ordering of the segments in a histogram chart. If the z-ordering isn't specified, it will be assigned based on data order, with the last data point ordered above the first. Relative z-ordering is only important between segments within the same data label facet, since segments that differ in their data label facet value should never overlap,

      Note that zIndex values should be integers between 0 and `maxDataZIndex`, inclusive, and don't directly map to the `DrawItem.zIndex` values of the underlying `DrawRect`s. This allows the Framework to use automatic z-ordering in the chart logic without any additional sorting or overhead that would otherwise be required.

      Returns:
        Current zIndexMetric value. Default value is null
      See Also:
        `getMetricFacetId()`, `getMaxDataZIndex()`, `getDataLabelFacet()`

    - #### getZoomChart

          public FacetChart getZoomChart()
                                  throws java.lang.IllegalStateException

      Mini-chart created to allow zooming when `canZoom` is enabled.

      This chart automatically has certain visual tweaks applied, including `showInlineLabels`, `muted colors` and `logarithmic scaling`. It can be further configured via `zoomChartProperties`.

      The selected range from this chart defaults to being shown with distinct styling as well (if `zoomShowSelection` is set), which can be controlled via `zoomSelectionChartProperties`.

      This component is an AutoChild named "zoomChart". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current zoomChart value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setZoomChartHeight

          public void setZoomChartHeight(double zoomChartHeight)
                                  throws java.lang.IllegalStateException

      Height of the `zoomChart`. The zoomChart is always as wide as the main chart.
      Parameters:
        `zoomChartHeight` - New zoomChartHeight value. Default value is 100
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getZoomChartHeight

          public double getZoomChartHeight()

      Height of the `zoomChart`. The zoomChart is always as wide as the main chart.
      Returns:
        Current zoomChartHeight value. Default value is 100

    - #### setZoomChartProperties

          public void setZoomChartProperties(FacetChart zoomChartProperties)
                                      throws java.lang.IllegalStateException

      Properties to further configure the `zoomChart`.
      Parameters:
        `zoomChartProperties` - New zoomChartProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getZoomChartProperties

          public FacetChart getZoomChartProperties()

      Properties to further configure the `zoomChart`.
      Returns:
        Current zoomChartProperties value. Default value is null

    - #### getZoomChartSlider

          public RangeSlider getZoomChartSlider()
                                         throws java.lang.IllegalStateException

      Slider controls shown on the mini-chart which is created when `canZoom` is enabled.

      This component is an AutoChild named "zoomChartSlider". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current zoomChartSlider value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setZoomLogScale

          public void setZoomLogScale(java.lang.Boolean zoomLogScale)
                               throws java.lang.IllegalStateException

      By default when `canZoom` is enabled, the `zoomChart` uses logarithmic scaling so that spikes in the data don't result in a zoomed chart that is mostly a flat line.

      Logarithmic scaling is automatically disabled if the dataset spans zero (eg, has negative and positive values) as this can't be shown in a logarithmic scale.

      Set `zoomLogScale` to explicitly enable or disable logarithmic scaling.

      Parameters:
        `zoomLogScale` - New zoomLogScale value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getZoomLogScale

          public java.lang.Boolean getZoomLogScale()

      By default when `canZoom` is enabled, the `zoomChart` uses logarithmic scaling so that spikes in the data don't result in a zoomed chart that is mostly a flat line.

      Logarithmic scaling is automatically disabled if the dataset spans zero (eg, has negative and positive values) as this can't be shown in a logarithmic scale.

      Set `zoomLogScale` to explicitly enable or disable logarithmic scaling.

      Returns:
        Current zoomLogScale value. Default value is null

    - #### setZoomMutePercent

          public void setZoomMutePercent(float zoomMutePercent)
                                  throws java.lang.IllegalStateException

      `colorMutePercent` to use for the `zoomChart`.
      Parameters:
        `zoomMutePercent` - New zoomMutePercent value. Default value is -35
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getZoomMutePercent

          public float getZoomMutePercent()

      `colorMutePercent` to use for the `zoomChart`.
      Returns:
        Current zoomMutePercent value. Default value is -35

    - #### getZoomSelectionChart

          public FacetChart getZoomSelectionChart()
                                           throws java.lang.IllegalStateException

      Mini-chart created when `canZoom` is enabled. This chart represents the currently selected range of data shown in the main chart.

      This component is an AutoChild named "zoomSelectionChart". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current zoomSelectionChart value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setZoomSelectionChartProperties

          public void setZoomSelectionChartProperties(FacetChart zoomSelectionChartProperties)
                                               throws java.lang.IllegalStateException

      Properties to further configure the `zoomSelectionChart`.
      Parameters:
        `zoomSelectionChartProperties` - New zoomSelectionChartProperties value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SGWTProperties`

    - #### getZoomSelectionChartProperties

          public FacetChart getZoomSelectionChartProperties()

      Properties to further configure the `zoomSelectionChart`.
      Returns:
        Current zoomSelectionChartProperties value. Default value is null

    - #### setZoomShowSelection

          public void setZoomShowSelection(java.lang.Boolean zoomShowSelection)
                                    throws java.lang.IllegalStateException

      Whether the selected range should be shown in a different style, which can be configured via `zoomSelectionChartProperties`. This has performance consequences and makes the rendering of the mini-chart slightly slower.
      Parameters:
        `zoomShowSelection` - New zoomShowSelection value. Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getZoomShowSelection

          public java.lang.Boolean getZoomShowSelection()

      Whether the selected range should be shown in a different style, which can be configured via `zoomSelectionChartProperties`. This has performance consequences and makes the rendering of the mini-chart slightly slower.
      Returns:
        Current zoomShowSelection value. Default value is true

    - #### setZoomStartPosition

          public void setZoomStartPosition(ZoomStartPosition zoomStartPosition)
                                    throws java.lang.IllegalStateException

      For a `zoomed chart`, determines what portion of the overall dataset should be initially shown in the main chart.

      Default is to show the end of the dataset if the X axis shows time and includes today's date, otherwise to show the start of the dataset.

      Set this property to override this default, or use `zoomStartValue` and `zoomEndValue` to start with a particular range.

      Parameters:
        `zoomStartPosition` - New zoomStartPosition value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getZoomStartPosition

          public ZoomStartPosition getZoomStartPosition()

      For a `zoomed chart`, determines what portion of the overall dataset should be initially shown in the main chart.

      Default is to show the end of the dataset if the X axis shows time and includes today's date, otherwise to show the start of the dataset.

      Set this property to override this default, or use `zoomStartValue` and `zoomEndValue` to start with a particular range.

      Returns:
        Current zoomStartPosition value. Default value is null

    - #### addChartBackgroundDrawnHandler

          public com.google.gwt.event.shared.HandlerRegistration addChartBackgroundDrawnHandler(ChartBackgroundDrawnHandler handler)

      Add a chartBackgroundDrawn handler.

      Called when most elements of the chart other than data data have been drawn, including gradations and legend.

      This notification will be fired each time the chart is redrawn (due to resize, data change, etc). If you want to draw additional information on the chart using `DrawPane` (FacetChart's superclass) and various `DrawItem`s, you should do in response to this notification. Due to auto-sizing, APIs that are typically used to position custom DrawItems (such as `FacetChart.getChartLeft()`) may return bad values if called at other times.

      Additional DrawItems added in this method will appear underneath data elements such as bars or columns. See `FacetChart.chartDrawn()` for placing DrawItems on top of data elements.

      Specified by:
        `addChartBackgroundDrawnHandler` in interface `HasChartBackgroundDrawnHandlers`
      Parameters:
        `handler` - the chartBackgroundDrawn handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addChartDrawnHandler

          public com.google.gwt.event.shared.HandlerRegistration addChartDrawnHandler(ChartDrawnHandler handler)

      Add a chartDrawn handler.

      Called when all elements of the chart (data lines / shapes, gradations, legend, labels etc) have completed drawing.

      See `FacetChart.chartBackgroundDrawn()` for usage information.

      Specified by:
        `addChartDrawnHandler` in interface `HasChartDrawnHandlers`
      Parameters:
        `handler` - the chartDrawn handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDataLabelClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addDataLabelClickHandler(DataLabelClickHandler handler)

      Add a dataLabelClick handler.

      Fires when the user clicks on a data label, that is, a text label showing values from the first facet. For example, the labels underneath the X-axis of a column chart, labelling each column.

      Specified by:
        `addDataLabelClickHandler` in interface `HasDataLabelClickHandlers`
      Parameters:
        `handler` - the dataLabelClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDataLabelHoverHandler

          public com.google.gwt.event.shared.HandlerRegistration addDataLabelHoverHandler(DataLabelHoverHandler handler)

      Add a dataLabelHover handler.

      Fires when the mouse hovers over a data label, that is, a text label showing values from the first facet. For example, the labels underneath the X-axis of a column chart, labelling each column.

      Specified by:
        `addDataLabelHoverHandler` in interface `HasDataLabelHoverHandlers`
      Parameters:
        `handler` - the dataLabelHover handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### drawnValueContainsPoint

          public java.lang.Boolean drawnValueContainsPoint(DrawnValue drawnValue)

      Returns whether a given `DrawnValue` contains a point. The point's X and Y coordinates may be passed into this method, or, if unspecified, the coordinates used are the current mouse event coordinates.

      For Area, Bubble, Line, Radar, and Scatter charts, a DrawnValue is considered to contain a point if the Euclidean distance from the DrawnValue's center (`x`, `y`) to the point is less than `this.dataPointSize`. For Pie charts, the DrawnValue is considered to contain a point if the point is within the pie slice. Similarly, for Doughnut charts, the DrawnValue is considered to contain a point if the point is within the pie slice and not in the doughnut hole. For Bar and Column charts, the DrawnValue is considered to contain a point if the point is within the bar or column, respectively. Note that for stacked Bar and Column charts, the point must also be in the stacked portion as opposed to anywhere within the bar or column.

      Parameters:
        `drawnValue` - the DrawnValue to check. The DrawnValue must be a valid DrawnValue from this chart.
      Returns:
        true if the DrawnValue contains the point at the given X, Y coordinates (or current mouse event coordinates); false if the DrawnValue does not contain the point; null for invalid parameters.

    - #### drawnValueContainsPoint

          public java.lang.Boolean drawnValueContainsPoint(DrawnValue drawnValue,
                                                           java.lang.Integer x)

      See Also:
        `drawnValueContainsPoint(com.smartgwt.client.widgets.chart.DrawnValue)`

    - #### drawnValueContainsPoint

          public java.lang.Boolean drawnValueContainsPoint(DrawnValue drawnValue,
                                                           java.lang.Integer x,
                                                           java.lang.Integer y)

      Returns whether a given `DrawnValue` contains a point. The point's X and Y coordinates may be passed into this method, or, if unspecified, the coordinates used are the current mouse event coordinates.

      For Area, Bubble, Line, Radar, and Scatter charts, a DrawnValue is considered to contain a point if the Euclidean distance from the DrawnValue's center (`x`, `y`) to the point is less than `this.dataPointSize`. For Pie charts, the DrawnValue is considered to contain a point if the point is within the pie slice. Similarly, for Doughnut charts, the DrawnValue is considered to contain a point if the point is within the pie slice and not in the doughnut hole. For Bar and Column charts, the DrawnValue is considered to contain a point if the point is within the bar or column, respectively. Note that for stacked Bar and Column charts, the point must also be in the stacked portion as opposed to anywhere within the bar or column.

      Parameters:
        `drawnValue` - the DrawnValue to check. The DrawnValue must be a valid DrawnValue from this chart.
        `x` - X coordinate of the point. If this parameter is specified, then `y` is a required parameter.
        `y` - Y coordinate of the point
      Returns:
        true if the DrawnValue contains the point at the given X, Y coordinates (or current mouse event coordinates); false if the DrawnValue does not contain the point; null for invalid parameters.

    - #### formatFacetValueId

          public java.lang.String formatFacetValueId(java.lang.Object value,
                                                     Facet facet)

      Return the text string to display for facet value labels that appear in chart legends or as labels for `chartType`s that have circumference or non-axis labels, such as for example "Pie" or "Radar" charts.
      Parameters:
        `value` - raw value of the metric
        `facet` - facet containing the value
      Returns:
        the text to display.
      See Also:
        `setXAxisValueFormatter(com.smartgwt.client.widgets.chart.ValueFormatter)`, `getFormatStringFacetValueIds()`

    - #### formatSegmentLabel

          public java.lang.String formatSegmentLabel(java.lang.Object startValue,
                                                     java.lang.Object endValue)

      Defines the format of the label for a segment in a histogram chart. By default, it simply returns a label of the form "Y1 to Y2" describing the start and end values, applying `setDataValueFormatter()` to format the values.

      Note that this method has no impact on the facet value labels appearing on the horizontal axis of the histogram chart.

      Parameters:
        `startValue` - raw start value of the segment
        `endValue` - raw end value of the segment
      Returns:
        the text to display.

    - #### getChartCenter

          public Point getChartCenter()

      Returns the centerpoint for radar charts and pie charts.

      Note that unstacked pie charts draw multiple pies, each with their own centers.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        the centerpoint for radar charts and pie charts.

    - #### getChartHeight

          public float getChartHeight(boolean recalc)

      Deprecated. `GwtFloatVsDouble`
      Get the height the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Parameters:
        `recalc` - if false then cached value will be returned, otherwise will be recalculated.
      Returns:
        the width of the central chart area.

    - #### getChartHeightAsDouble

          public double getChartHeightAsDouble(boolean recalc)

      Get the height the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Parameters:
        `recalc` - if false then cached value will be returned, otherwise will be recalculated.
      Returns:
        the width of the central chart area.

    - #### getChartLeft

          public float getChartLeft()

      Deprecated. `GwtFloatVsDouble`
      Get the left margin of the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        left margin of the central chart area

    - #### getChartLeftAsDouble

          public double getChartLeftAsDouble()

      Get the left margin of the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        left margin of the central chart area

    - #### getChartRadius

          public float getChartRadius()

      Deprecated. `GwtFloatVsDouble`
      Returns the radius for radar charts and pie charts. For stacked pie charts this is radius of the outermost pie.

      Note that unstacked pie charts draw multiple pies, each with their own radii.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        the radius for radar charts and pie charts.

    - #### getChartRadiusAsDouble

          public double getChartRadiusAsDouble()

      Returns the radius for radar charts and pie charts. For stacked pie charts this is radius of the outermost pie.

      Note that unstacked pie charts draw multiple pies, each with their own radii.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        the radius for radar charts and pie charts.

    - #### getChartTop

          public float getChartTop()

      Deprecated. `GwtFloatVsDouble`
      Get the top coordinate of the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        The top coordinate of the central chart area

    - #### getChartTopAsDouble

          public double getChartTopAsDouble()

      Get the top coordinate of the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        The top coordinate of the central chart area

    - #### getChartWidth

          public float getChartWidth(boolean recalc)

      Deprecated. `GwtFloatVsDouble`
      Get the width of the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Parameters:
        `recalc` - if false then cached value will be returned, otherwise will be recalculated.
      Returns:
        the width of the central chart area.

    - #### getChartWidthAsDouble

          public double getChartWidthAsDouble(boolean recalc)

      Get the width of the central chart area, where data elements appear.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Parameters:
        `recalc` - if false then cached value will be returned, otherwise will be recalculated.
      Returns:
        the width of the central chart area.

    - #### getDataLabelFacet

          public Facet getDataLabelFacet()

      Returns the `Facet` in the list of `facets` whose `values` are rendered as labels along the data axis of the chart or in the main chart area.

      Most single-facet charts and all multi-facet charts have the data label facet as their first facet. The exceptions are that single-facet Pie/Doughnut charts and Bubble and Scatter charts do not have data label facets.

      Note that the user may swap the data label facet and the `legend facet` in most chart types using the context menu.

      Returns:
        the data label facet, or `null` if there is no such facet
      See Also:
        `getFacets()`

    - #### getDataLabelHoverHTML

          public java.lang.String getDataLabelHoverHTML(FacetValue facetValue)

      Called when the mouse hovers over a data label, that is, a text label showing values from the first facet. For example, the labels underneath the X-axis of a column chart, labelling each column.
      Parameters:
        `facetValue` - facetValue that was hovered
      Returns:
        hover text to be shown. Return null to avoid a hover being shown. See `HTMLString`
      See Also:
        Drill Up/Down Example

    - #### getDrawnValue

          public DrawnValue getDrawnValue(FacetValueMap facetValues)

      Returns rendering information for the data value specified by the passed facet values.

      If called before `FacetChart.chartDrawn()`, logs a warning and returns null.

      Parameters:
        `facetValues` - facet values of desired data value
      Returns:
        the drawn value, or null for invalid arguments / incorrect timing of call

    - #### getDrawnValueAtPoint

          public DrawnValue getDrawnValueAtPoint()

      Returns a `DrawnValue` object for the data value that is shown nearest to the passed coordinates only if it's under the given coordinates, or under the current mouse event coordinates if no coordinates are passed. This method is similar to `getNearestDrawnValue()`, but the DrawnValue is only returned if it's under the coordinates.

      See `drawnValueContainsPoint()` for the criteria that determine whether a DrawnValue is under (contains) the coordinates.

      Returns:
        the nearest drawn value if under the given coordinates (or current mouse event coordinates) or null if not under the coordinates, or for invalid arguments / incorrect timing of call.

    - #### getDrawnValueAtPoint

          public DrawnValue getDrawnValueAtPoint(java.lang.Integer x)

      See Also:
        `getDrawnValueAtPoint()`

    - #### getDrawnValueAtPoint

          public DrawnValue getDrawnValueAtPoint(java.lang.Integer x,
                                                 java.lang.Integer y)

      See Also:
        `getDrawnValueAtPoint()`

    - #### getDrawnValueAtPoint

          public DrawnValue getDrawnValueAtPoint(java.lang.Integer x,
                                                 java.lang.Integer y,
                                                 java.lang.String metric)

      Returns a `DrawnValue` object for the data value that is shown nearest to the passed coordinates only if it's under the given coordinates, or under the current mouse event coordinates if no coordinates are passed. This method is similar to `getNearestDrawnValue()`, but the DrawnValue is only returned if it's under the coordinates.

      See `drawnValueContainsPoint()` for the criteria that determine whether a DrawnValue is under (contains) the coordinates.

      Parameters:
        `x` - X coordinate. If this parameter is specified, then `y` is a required parameter.
        `y` - Y coordinate
        `metric` - metric over which to determine the drawn value
      Returns:
        the nearest drawn value if under the given coordinates (or current mouse event coordinates) or null if not under the coordinates, or for invalid arguments / incorrect timing of call.

    - #### getDrawnValues

          public DrawnValue[] getDrawnValues()

      Returns rendering information for the data values specified by the passed facet values.

      If called before `FacetChart.chartDrawn()`, logs a warning and returns null.

      Returns:
        the DrawnValues, or null for invalid arguments / incorrect timing of call

    - #### getDrawnValues

          public DrawnValue[] getDrawnValues(FacetValueMap facetValues)

      Returns rendering information for the data values specified by the passed facet values.

      If called before `FacetChart.chartDrawn()`, logs a warning and returns null.

      Parameters:
        `facetValues` - facet values of desired DrawnValues. If no FacetValueMap is provided, then all DrawnValues are returned.
      Returns:
        the DrawnValues, or null for invalid arguments / incorrect timing of call

    - #### getDrawnValuesAtPoint

          public DrawnValue[] getDrawnValuesAtPoint()

      Returns an array of `DrawnValue` objects for the data values of each metric that are shown nearest to the passed coordinates, but only if they're under the given coordinates, or under the current mouse event coordinates if no coordinates are passed. This method is similar to `getNearestDrawnValues()`, but DrawnValues are only included in the returned array if they're under the coordinates.

      See `drawnValueContainsPoint()` for the criteria that determine whether a DrawnValue is under (contains) the coordinates.

      Returns:
        the nearest DrawnValues that are under the given coordinates (or current mouse event coordinates), or null for invalid arguments / incorrect timing of call.

    - #### getDrawnValuesAtPoint

          public DrawnValue[] getDrawnValuesAtPoint(java.lang.Integer x)

      See Also:
        `getDrawnValuesAtPoint()`

    - #### getDrawnValuesAtPoint

          public DrawnValue[] getDrawnValuesAtPoint(java.lang.Integer x,
                                                    java.lang.Integer y)

      Returns an array of `DrawnValue` objects for the data values of each metric that are shown nearest to the passed coordinates, but only if they're under the given coordinates, or under the current mouse event coordinates if no coordinates are passed. This method is similar to `getNearestDrawnValues()`, but DrawnValues are only included in the returned array if they're under the coordinates.

      See `drawnValueContainsPoint()` for the criteria that determine whether a DrawnValue is under (contains) the coordinates.

      Parameters:
        `x` - X coordinate. If this parameter is specified, then `y` is a required parameter.
        `y` - Y coordinate
      Returns:
        the nearest DrawnValues that are under the given coordinates (or current mouse event coordinates), or null for invalid arguments / incorrect timing of call.

    - #### getFacet

          public Facet getFacet(java.lang.String facetId)

      Get a facet definition by facetId.
      Parameters:
        `facetId` - the id of the facet to retrieve
      Returns:
        the Facet if found, or null
      See Also:
        `Facet`

    - #### getFacetValue

          public FacetValue getFacetValue(java.lang.String facetId,
                                          java.lang.String facetValueId)

      Get facet value definition by facetId and facetValueId.
      Parameters:
        `facetId` - the id of the facet to retrieve
        `facetValueId` - the id of the facet value to retrieve
      Returns:
        the FacetValue if found, or null
      See Also:
        `FacetValue`

    - #### getGradations

          public float[] getGradations()

      Return an array of the gradation values used in the current chart. Pass these values to `getXCoord()` / `getYCoord()` (depending on the orientation of the chart) to discover the coordinates where gradations are drawn.

      This is only allowed to be called when `FacetChart.chartDrawn()` fires.

      Returns:
        an array of gradation values used in the current chart.

    - #### getLegendFacet

          public Facet getLegendFacet()

      Returns the `Facet` in the list of `facets` whose `values` are rendered in the chart's legend.

      Most single-facet charts do not have a legend facet. The exceptions are that single-facet Pie/Doughnut charts have a legend facet as the first facet and Bubble and Scatter charts may optionally have a legend facet as the second facet, after the metric facet.

      In all multi-facet charts, the legend facet is the second facet.

      Note that the user may swap the legend facet and the `data label facet` in most chart types using the context menu.

      Returns:
        the legend facet, or `null` if there is no such facet
      See Also:
        `getFacets()`

    - #### getLegendHoverHTML

          public java.lang.String getLegendHoverHTML(FacetValue facetValue,
                                                     FacetValue metricFacetValue)

      Called when the mouse hovers over a color swatch or its label in the legend area of the chart.

      The `FacetValue` that the user is hovering over is provided. If the chart is a `multi-axis chart`, the `FacetValue` for the hovered-over metric will also be provided.

      Parameters:
        `facetValue` - facetValue that the mouse is over
        `metricFacetValue` - for a multi-axis chart, facetValue representing the hovered-over metric. Null if chart is not multi-axis
      Returns:
        hover text to be shown. Return null to avoid a hover being shown. See `HTMLString`
      See Also:
        Drill Up/Down Example

    - #### getNearestDrawnValue

          public DrawnValue getNearestDrawnValue()

      Returns rendering information for the data value that is shown nearest to the passed coordinates, as a `DrawnValue` object.

      Passed X and Y coordinates should be relative to the FacetChart. If neither an X or Y coordinate is passed, both X and Y will use the current `Canvas.getOffsetX()` and `Canvas.getOffsetY()`.

      If called before `FacetChart.chartDrawn()`, logs a warning and returns null. For a chart with multiple vertical axes, returns the nearest point from the first metric only (see `FacetChart overview`). For scatter charts, returns a DrawnValue where the `value` is from the `y-axis metric`.

      To get the nearest DrawnValue only if it contains the given coordinates, you can either use the `getDrawnValueAtPoint()` API or call `drawnValueContainsPoint()` on the return value.

      Behavior for different chart types is as follows:

      #### Bar / Column

      Returns the centerpoint of the end of the nearest bar or column by considering the Y coordinate (bar) or X coordinate (column) only.

      #### Line / Area

      Returns the nearest point based on which data label is nearest to the passed X coordinate. For multi-series charts, if Y coordinate is not passed the data point returned is from the series that has the highest value at the data label.

      #### Radar

      Returns the data point nearest the passed coordinates by straight line distance. Passing only one coordinate will cause a warning to be logged and null to be returned; passing neither coordinate is allowed (`getOffsetX/Y` will be used).

      #### Pie

      Returns the data point for the segment that would be hit if a line were drawn from the passed coordinates to the center of the pie.

      If there are multiple stacked pies, uses the pie that contains the passed coordinates, otherwise the outermost pie.

      If there are multiple non-stacked pies, uses the pie that is nearest the passed coordinates by straight-line distance to the center of the pie.

      Passing only one coordinate will cause a warning to be logged and null to be returned; passing neither coordinate is allowed (`getOffsetX/Y` will be used).

      If the chart is a `multi-axis chart` then this method takes an optional parameter, `metric`, which causes this method to return a `DrawnValue` from the specified metric. If a metric is not passed then the first metric of the metric facet will be used (or just the `valueProperty` if there is no metric facet).

      Returns:
        the nearest drawn value, or null for invalid arguments / incorrect timing of call
      See Also:
        Custom Hovers Example

    - #### getNearestDrawnValue

          public DrawnValue getNearestDrawnValue(java.lang.Integer x)

      See Also:
        `getNearestDrawnValue()`

    - #### getNearestDrawnValue

          public DrawnValue getNearestDrawnValue(java.lang.Integer x,
                                                 java.lang.Integer y)

      See Also:
        `getNearestDrawnValue()`

    - #### getNearestDrawnValue

          public DrawnValue getNearestDrawnValue(java.lang.Integer x,
                                                 java.lang.Integer y,
                                                 java.lang.String metric)

      Returns rendering information for the data value that is shown nearest to the passed coordinates, as a `DrawnValue` object.

      Passed X and Y coordinates should be relative to the FacetChart. If neither an X or Y coordinate is passed, both X and Y will use the current `Canvas.getOffsetX()` and `Canvas.getOffsetY()`.

      If called before `FacetChart.chartDrawn()`, logs a warning and returns null. For a chart with multiple vertical axes, returns the nearest point from the first metric only (see `FacetChart overview`). For scatter charts, returns a DrawnValue where the `value` is from the `y-axis metric`.

      To get the nearest DrawnValue only if it contains the given coordinates, you can either use the `getDrawnValueAtPoint()` API or call `drawnValueContainsPoint()` on the return value.

      Behavior for different chart types is as follows:

      #### Bar / Column

      Returns the centerpoint of the end of the nearest bar or column by considering the Y coordinate (bar) or X coordinate (column) only.

      #### Line / Area

      Returns the nearest point based on which data label is nearest to the passed X coordinate. For multi-series charts, if Y coordinate is not passed the data point returned is from the series that has the highest value at the data label.

      #### Radar

      Returns the data point nearest the passed coordinates by straight line distance. Passing only one coordinate will cause a warning to be logged and null to be returned; passing neither coordinate is allowed (`getOffsetX/Y` will be used).

      #### Pie

      Returns the data point for the segment that would be hit if a line were drawn from the passed coordinates to the center of the pie.

      If there are multiple stacked pies, uses the pie that contains the passed coordinates, otherwise the outermost pie.

      If there are multiple non-stacked pies, uses the pie that is nearest the passed coordinates by straight-line distance to the center of the pie.

      Passing only one coordinate will cause a warning to be logged and null to be returned; passing neither coordinate is allowed (`getOffsetX/Y` will be used).

      If the chart is a `multi-axis chart` then this method takes an optional parameter, `metric`, which causes this method to return a `DrawnValue` from the specified metric. If a metric is not passed then the first metric of the metric facet will be used (or just the `valueProperty` if there is no metric facet).

      Parameters:
        `x` - X coordinate. If this parameter is specified, then `y` is a required parameter.
        `y` - Y coordinate
        `metric` - metric over which to determine the drawn value
      Returns:
        the nearest drawn value, or null for invalid arguments / incorrect timing of call
      See Also:
        Custom Hovers Example

    - #### getNearestDrawnValues

          public DrawnValue[] getNearestDrawnValues()

      Returns an array of `DrawnValue` objects containing rendering information for the data values having each metric that are shown nearest to the passed coordinates.

      Passed X and Y coordinates should be relative to the FacetChart. If neither an X or Y coordinate is passed, both X and Y will use the current `Canvas.getOffsetX()` and `Canvas.getOffsetY()`.

      The behavior for different chart types is the same as `getNearestDrawnValue()`. This method also logs a warning and returns null if called before `FacetChart.chartDrawn()`.

      To get the nearest DrawnValues only if they contain the given coordinates, you can either use the `getDrawnValuesAtPoint()` API or check whether each DrawnValue in the returned array contains the point by calling `drawnValueContainsPoint()`.

      Returns:
        the nearest drawn values for each metric, or null for invalid arguments / incorrect timing of call
      See Also:
        `getDrawnValuesAtPoint()`

    - #### getNearestDrawnValues

          public DrawnValue[] getNearestDrawnValues(java.lang.Integer x)

      See Also:
        `getNearestDrawnValues()`

    - #### getNearestDrawnValues

          public DrawnValue[] getNearestDrawnValues(java.lang.Integer x,
                                                    java.lang.Integer y)

      Returns an array of `DrawnValue` objects containing rendering information for the data values having each metric that are shown nearest to the passed coordinates.

      Passed X and Y coordinates should be relative to the FacetChart. If neither an X or Y coordinate is passed, both X and Y will use the current `Canvas.getOffsetX()` and `Canvas.getOffsetY()`.

      The behavior for different chart types is the same as `getNearestDrawnValue()`. This method also logs a warning and returns null if called before `FacetChart.chartDrawn()`.

      To get the nearest DrawnValues only if they contain the given coordinates, you can either use the `getDrawnValuesAtPoint()` API or check whether each DrawnValue in the returned array contains the point by calling `drawnValueContainsPoint()`.

      Parameters:
        `x` - X coordinate. If this parameter is specified, then `y` is a required parameter.
        `y` - Y coordinate
      Returns:
        the nearest drawn values for each metric, or null for invalid arguments / incorrect timing of call
      See Also:
        `getDrawnValuesAtPoint()`

    - #### getNumDataPoints

          public java.lang.Integer getNumDataPoints()

      Count the number of data points.
      Returns:
        the number of data values

    - #### getNumDataPoints

          public java.lang.Integer getNumDataPoints(FacetValueMap criteria)

      Count the number of data points.
      Parameters:
        `criteria` - a set of facetValues describing a slice of the data
      Returns:
        the number of data values

    - #### getPolynomialRegressionFunction

          public void getPolynomialRegressionFunction()

      For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the polynomial that best fits the data. See http://en.wikipedia.org/wiki/Polynomial_regression.

    - #### getPolynomialRegressionFunction

          public void getPolynomialRegressionFunction(java.lang.Integer degree)

      See Also:
        `getPolynomialRegressionFunction()`

    - #### getPolynomialRegressionFunction

          public void getPolynomialRegressionFunction(java.lang.Integer degree,
                                                      java.lang.String xMetric)

      See Also:
        `getPolynomialRegressionFunction()`

    - #### getPolynomialRegressionFunction

          public void getPolynomialRegressionFunction(java.lang.Integer degree,
                                                      java.lang.String xMetric,
                                                      java.lang.String yMetric)

      For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the polynomial that best fits the data. See http://en.wikipedia.org/wiki/Polynomial_regression.
      Parameters:
        `degree` - the degree of the polynomial. Defaults to `regressionPolynomialDegree`.
        `xMetric` - ID of an inlined facet value to use as the independent variable. Defaults to the `x-axis metric`.
        `yMetric` - ID of an inlined facet value to use as the dependent variable. Defaults to the `y-axis metric`.

    - #### getSimpleLinearRegressionFunction

          public void getSimpleLinearRegressionFunction()

      For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the line that best fits the data. See http://en.wikipedia.org/wiki/Simple_linear_regression.

    - #### getSimpleLinearRegressionFunction

          public void getSimpleLinearRegressionFunction(java.lang.String xMetric)

      See Also:
        `getSimpleLinearRegressionFunction()`

    - #### getSimpleLinearRegressionFunction

          public void getSimpleLinearRegressionFunction(java.lang.String xMetric,
                                                        java.lang.String yMetric)

      For scatter plots only, get a Function from the specified independent variable X to the specified dependent variable Y that defines the line that best fits the data. See http://en.wikipedia.org/wiki/Simple_linear_regression.
      Parameters:
        `xMetric` - ID of an inlined facet value to use as the independent variable. Defaults to the `x-axis metric`.
        `yMetric` - ID of an inlined facet value to use as the dependent variable. Defaults to the `y-axis metric`.

    - #### getXCoord

          public float getXCoord(double value)

      Returns the X coordinate where the passed data value either was or would be drawn. For example, this would be the X coordinate where a bar would end in a bar chart.

      This is only allowed to be called after `FacetChart.chartDrawn()` fires.

      If the `chartType` is `ChartType.BAR`, `ChartType.BUBBLE`, or `ChartType.SCATTER` then the `value` argument should be a number. For other rectangular charts, this method expects a `FacetValueMap` that uniquely identifies the data cell whose X-axis coordinate is to be retrieved.

      Note that when `canZoom` is enabled, this API is valid only for data values between `zoomStartValue` and `zoomEndValue`.

      Parameters:
        `value` - the value to be drawn.
      Returns:
        the X coordinate where the passed data value would be drawn; or null if the passed `FacetValueMap` does not identify a currently-drawn data cell.

    - #### getXCoord

          public float getXCoord(FacetValueMap value)

      Returns the X coordinate where the passed data value either was or would be drawn. For example, this would be the X coordinate where a bar would end in a bar chart.

      This is only allowed to be called after `FacetChart.chartDrawn()` fires.

      If the `chartType` is `ChartType.BAR`, `ChartType.BUBBLE`, or `ChartType.SCATTER` then the `value` argument should be a number. For other rectangular charts, this method expects a `FacetValueMap` that uniquely identifies the data cell whose X-axis coordinate is to be retrieved.

      Note that when `canZoom` is enabled, this API is valid only for data values between `zoomStartValue` and `zoomEndValue`.

      Parameters:
        `value` - the value to be drawn.
      Returns:
        the X coordinate where the passed data value would be drawn; or null if the passed `FacetValueMap` does not identify a currently-drawn data cell.

    - #### getYCoord

          public float getYCoord(double value)

      Returns the Y coordinate where the passed data value either was or would be drawn. For example, this would be the Y coordinate that a line would pass through on a line chart, or the top of a column on a column chart.

      This is only allowed to be called after `FacetChart.chartDrawn()` fires.

      If the `chartType` is `ChartType.AREA`, `ChartType.BUBBLE`, `ChartType.COLUMN`, `ChartType.HISTOGRAM`, `ChartType.LINE`, or `ChartType.SCATTER` then the `value` argument should be a number. For `ChartType.BAR` charts this method expects a `FacetValueMap` that uniquely identifies the data cell whose Y-axis coordinate is to be retrieved.

      Parameters:
        `value` - the value to be drawn.
      Returns:
        the Y coordinate where the passed data value would be drawn.

    - #### getYCoord

          public float getYCoord(FacetValueMap value)

      Returns the Y coordinate where the passed data value either was or would be drawn. For example, this would be the Y coordinate that a line would pass through on a line chart, or the top of a column on a column chart.

      This is only allowed to be called after `FacetChart.chartDrawn()` fires.

      If the `chartType` is `ChartType.AREA`, `ChartType.BUBBLE`, `ChartType.COLUMN`, `ChartType.HISTOGRAM`, `ChartType.LINE`, or `ChartType.SCATTER` then the `value` argument should be a number. For `ChartType.BAR` charts this method expects a `FacetValueMap` that uniquely identifies the data cell whose Y-axis coordinate is to be retrieved.

      Parameters:
        `value` - the value to be drawn.
      Returns:
        the Y coordinate where the passed data value would be drawn.

    - #### addLegendClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addLegendClickHandler(LegendClickHandler handler)

      Add a legendClick handler.

      Fires when the user clicks on the legend area of the chart.

      If the user specifically clicks on a color swatch or it's label, the `FacetValue` clicked on will be provided.

      If the chart is a `multi-axis chart`, the `FacetValue` for the clicked-on metric will also be provided.

      Specified by:
        `addLegendClickHandler` in interface `HasLegendClickHandlers`
      Parameters:
        `handler` - the legendClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addLegendHoverHandler

          public com.google.gwt.event.shared.HandlerRegistration addLegendHoverHandler(LegendHoverHandler handler)

      Add a legendHover handler.

      Fires when the mouse hovers over a color swatch or its label in the legend area of the chart.

      The `FacetValue` that the user is hovering over is provided. If the chart is a `multi-axis chart`, the `FacetValue` for the hovered-over metric will also be provided.

      Specified by:
        `addLegendHoverHandler` in interface `HasLegendHoverHandlers`
      Parameters:
        `handler` - the legendHover handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addValueClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addValueClickHandler(ValueClickHandler handler)

      Add a valueClick handler.

      Fires when a data value is clicked, and provides information about the data value that was clicked as a `DrawnValue` object.

      Specifically, this fires for clicks on pie slices, bars or columns, areas, lines or points (in a Bubble or Scatter plot).

      If there are multiple data values at the clicked position, you can use `FacetChart.getNearestDrawnValues()` to discover the full list of values at the current coordinate (pass in `getOffsetX/Y()` for the coordinates).

      If you want to create behaviors for clicking or moving near shapes without requiring a direct hit, implement a standard `Canvas.click()` handler on the FacetChart as a whole and use `FacetChart.getNearestDrawnValue()` to discover the nearest data values.

      Specified by:
        `addValueClickHandler` in interface `HasValueClickHandlers`
      Parameters:
        `handler` - the valueClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addZoomChangedHandler

          public com.google.gwt.event.shared.HandlerRegistration addZoomChangedHandler(ZoomChangedHandler handler)

      Add a zoomChanged handler.

      Fires when the end user changes the zoom position in a `zoomed chart`.

      Specified by:
        `addZoomChangedHandler` in interface `HasZoomChangedHandlers`
      Parameters:
        `handler` - the zoomChanged handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### zoomTo

          public void zoomTo(java.lang.Object startValue,
                             java.lang.Object endValue)

      For a `zoomed chart`, simultaneously sets the `zoomStartValue` and `zoomEndValue`.
      Parameters:
        `startValue` - starting value for the data range shown in the main chart
        `endValue` - ending value for the data range shown in the main chart

    - #### setDefaultProperties

          public static void setDefaultProperties(FacetChart facetChartProperties)

      Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

      Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

      Parameters:
        `facetChartProperties` - properties that should be used as new defaults when instances of this class are created
      See Also:
        `SGWTProperties`

    - #### setData

          public void setData(Record[] records)

      Dataset for this chart.

      Data should be specified as an array of Records where each record contains one data value. Each record also contains a property named after each facetId whose value is a facetValueId from that facet.

      For example, with a facet with id "regions" and facetValues "west", "north" and "east", and with `valueProperty` with it's default value "_value", the `data` property could be:

              isc.Chart.create({
                 facets:[{ id:"regions"
           }],
                 data : [
                    {regions:"west", _value:4},
                    {regions:"north", _value:2},

           {regions:"east", _value:5}
                 ]
              })

      If there were a second facet with id "product" and facetValues "cars" and "trucks", a Chart with a complete set of values would be:

           isc.Chart.create({
                 facets:[{ id:"regions" }, { id:"product" }],
                 data : [

           {product:"cars", regions:"west", _value:4},
                    {product:"cars", regions:"north", _value:2},

           {product:"cars", regions:"east", _value:5},
                    {product:"trucks", regions:"west", _value:1},

           {product:"trucks", regions:"north", _value:9},
                    {product:"trucks", regions:"east", _value:3}

           ]
              })

      This 2 facet (or "2 dimensional") dataset, if rendered as a bar chart, would use stacked or clustered bars and a legend.
      Parameters:
        `data` - data Default value is null

    - #### setData

          public void setData(RecordList records)

    - #### getRecords

          public Record[] getRecords()

    - #### getDataAsRecordList

          public RecordList getDataAsRecordList()

    - #### setPointHoverCustomizer

          public void setPointHoverCustomizer(ChartPointHoverCustomizer hoverCustomizer)

      Display custom HTML when `showDataPoints` is true and the mouse hovers over a point.
      Parameters:
        `hoverCustomizer` -

    - #### setDataLabelHoverHTMLCustomizer

          public void setDataLabelHoverHTMLCustomizer(DataLabelHoverCustomizer dataLabelHoverHTMLCustomizer)

      Called when the mouse hovers over a data label, that is, a text label showing values from the first facet. For example, the labels underneath the X-axis of a column chart, labelling each column.
      Parameters:
        `dataLabelHoverHTMLCustomizer` -

    - #### setLegendHoverCustomizer

          public void setLegendHoverCustomizer(LegendHoverCustomizer legendHoverHTMLCustomizer)

      Called when the mouse hovers over a color swatch or its label in the legend area of the chart.

      The `FacetValue` that the user is hovering over is provided. If the chart is a `multi-axis chart`, the `FacetValue` for the hovered-over metric will also be provided.

      Parameters:
        `facetValue` - (FacetValue) facetValue that the mouse is over
        `metricFacetValue` - (FacetValue) for a multi-axis chart, facetValue representing the hovered-over metric. Null if chart is not multi-axis

    - #### setPointClickHandler

          public void setPointClickHandler(ChartPointClickHandler handler)

      Apply a handler to fire when `showDataPoints` is true, and the user clicks on a point.
      Parameters:
        `handler` -

    - #### getPrintHTML

          public java.lang.String getPrintHTML(PrintProperties printProperties,
                                               PrintHTMLCallback callback)

      Retrieves printable HTML for this component and all printable subcomponents.

      By default any Canvas with children will simply collect the printable HTML of its children by calling getPrintHTML() on each child that is considered `printable`.

      If overriding this method for a custom component, you should either return a String of printable HTML string directly or return null, and fire the callback (if provided).

      To return an empty print representation, return an empty string ("") rather than null.

      The `printProperties` argument, if passed, must be passed to any subcomponents on which `getPrintHTML()` is called.

      Notes on printing

      To print a `FacetChart` for export on IE8 and earlier, it is `PrintProperties` with `printForExport`:true:

           final PrintProperties pp = new PrintProperties();
           pp.setPrintForExport(true);
           final String exportHTML = chart.getPrintHTML(pp, null);

      Note: this is an override point.

      Overrides:
        `getPrintHTML` in class `DrawPane`
      Parameters:
        `printProperties` - properties to configure printing behavior - may be null.
        `callback` - optional callback to fire. Generated HTML should be passed to the `PrintHTMLCallback.setHTML(String)` method of the callback.
      Returns:
        null if the print HTML is being generated asynchronously and/or a callback is provided; otherwise, the direct print HTML for this component (but note that returning direct print HTML is a deprecated feature).
      See Also:
        `Printing overview and related methods`

    - #### setZoomStartValue

          public void setZoomStartValue(java.lang.Object zoomStartValue)

      For a `zoomed chart`, start value of the data range shown in the main chart. If `zoomEndValue` is not also set, the range shown will be from `zoomStartValue` to the end of the dataset.

      The value provided should be a value in the range of the facet for the X axis, for example, for a time-based axis, a Date instance, for a numeric axis, a Number, for an axis that just has text labels (such as city names), a String.
      If this method is called after the component has been drawn/initialized: Setter for `zoomStartValue`.

      Note that the `zoomStartValue` and `zoomEndValue` may be set simultaneously using `FacetChart.zoomTo`.

      Parameters:
        `zoomStartValue` - New start value for the data range shown in the main chart. Default value is null

    - #### getZoomStartValue

          public java.lang.Object getZoomStartValue()

      For a `zoomed chart`, start value of the data range shown in the main chart. If `zoomEndValue` is not also set, the range shown will be from `zoomStartValue` to the end of the dataset.

      The value provided should be a value in the range of the facet for the X axis, for example, for a time-based axis, a Date instance, for a numeric axis, a Number, for an axis that just has text labels (such as city names), a String.

      Returns:
        Object

    - #### setZoomEndValue

          public void setZoomEndValue(java.lang.Object zoomEndValue)

      For a `zoomed chart`, end value of the data range shown in the main chart. If `zoomStartValue` is not also set, the range shown will be from the beginning of the dataset up to `zoomEndValue`

      The value provided should be a value in the range of the facet for the X axis, for example, for a time-based axis, a Date instance, for a numeric axis, a Number, for an axis that just has text labels (such as city names), a String.
      If this method is called after the component has been drawn/initialized: Setter for `zoomEndValue`.

      Note that the `zoomStartValue` and `zoomEndValue` may be set simultaneously using `FacetChart.zoomTo`.

      Parameters:
        `zoomEndValue` - New end value for the data range shown in the main chart. Default value is null

    - #### getZoomEndValue

          public java.lang.Object getZoomEndValue()

      For a `zoomed chart`, end value of the data range shown in the main chart. If `zoomStartValue` is not also set, the range shown will be from the beginning of the dataset up to `zoomEndValue`

      The value provided should be a value in the range of the facet for the X axis, for example, for a time-based axis, a Date instance, for a numeric axis, a Number, for an axis that just has text labels (such as city names), a String.

      Returns:
        Object

    - #### setAxisValueFormatter

          public void setAxisValueFormatter(ValueFormatter formatter)

      Formatter to apply to values displayed in the gradation labels.
      Parameters:
        `formatter` - Formatter to apply to values displayed in the gradation labels

    - #### setXAxisValueFormatter

          public void setXAxisValueFormatter(ValueFormatter formatter)

      Formatter to apply to values displayed in the gradation labels on the x-axis. Some documentation directing here may also relate to `setYAxisValueFormatter()`.

      Note that the installed formatter will only be called if the x-axis has gradation labels, meaning labels drawn at regular intervals not associated with any particular facet value. So, it will not be called if the labels on the x-axis are merely facet value ids. In that case, you may wish to build an array of `FacetValues` for the x-axis facet, as a FacetValue constructor is available to set a separate facet id and title, and then call `Facet.setValues()`.

      Parameters:
        `formatter` - Formatter to apply to values displayed in the gradation labels

    - #### setYAxisValueFormatter

          public void setYAxisValueFormatter(ValueFormatter formatter)

      Formatter to apply to values displayed in the gradation labels on the y-axis. See also the similar setter `setXAxisValueFormatter()` for the other axis.
      Parameters:
        `formatter` - Formatter to apply to values displayed in the gradation labels

    - #### setDataValueFormatter

          public void setDataValueFormatter(ValueFormatter formatter)

      Formatter to apply to values displayed in the hover labels and other value labels
      Parameters:
        `formatter` - Formatter to apply to values displayed in the hover labels and other value labels

    - #### getMean

          public java.lang.Float getMean(java.lang.String criteria)

      Calculate the mean, or expected value, of the data over a single metric. See http://en.wikipedia.org/wiki/Expected_value.

      The first argument, criteria, determines which metric is used to calculate the mean. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the mean of the data values

    - #### getMean

          public java.lang.Float getMean(FacetValueMap criteria)

      Calculate the mean, or expected value, of the data over a single metric. See http://en.wikipedia.org/wiki/Expected_value.

      The first argument, criteria, determines which metric is used to calculate the mean. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the mean of the data values

    - #### getMedian

          public java.lang.Float getMedian(java.lang.String criteria)

      Calculate the median of the data over a single metric. See http://en.wikipedia.org/wiki/Median.

      The first argument, criteria, determines which metric is used to calculate the median. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the median of the data values

    - #### getMedian

          public java.lang.Float getMedian(FacetValueMap criteria)

      Calculate the median of the data over a single metric. See http://en.wikipedia.org/wiki/Median.

      The first argument, criteria, determines which metric is used to calculate the median. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the median of the data values

    - #### getPercentile

          public java.lang.Float getPercentile(java.lang.String criteria,
                                               float percentile)

      Calculate a percentile of the data over a single metric. See http://en.wikipedia.org/wiki/Percentile.

      The first argument, criteria, determines which metric is used to calculate a percentile. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      The second argument is the percentile to calculate and it must be a number from 0 to 100.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
        `percentile` - the percentile to calculate
      Returns:
        a percentile of the data values

    - #### getPercentile

          public java.lang.Float getPercentile(FacetValueMap criteria,
                                               float percentile)

      Calculate a percentile of the data over a single metric. See http://en.wikipedia.org/wiki/Percentile.

      The first argument, criteria, determines which metric is used to calculate a percentile. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      The second argument is the percentile to calculate and it must be a number from 0 to 100.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
        `percentile` - the percentile to calculate
      Returns:
        a percentile of the data values

    - #### getRange

          public java.lang.Float getRange(java.lang.String criteria)

      Calculate the range of the data from a single metric.

      The first argument, criteria, determines which metric is used to calculate the range. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the range of the data values

    - #### getRange

          public java.lang.Float getRange(FacetValueMap criteria)

      Calculate the range of the data from a single metric.

      The first argument, criteria, determines which metric is used to calculate the range. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the range of the data values

    - #### getStdDev

          public java.lang.Float getStdDev(java.lang.String criteria,
                                           boolean population)

      Calculate the standard deviation of the data from a single metric. See http://en.wikipedia.org/wiki/Standard_deviation.

      The first argument, criteria, determines which metric is used to calculate the standard deviation. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
        `population` - false to calculate a sample standard deviation, true to calculate a population standard deviation
      Returns:
        the standard deviation of the data values

    - #### getStdDev

          public java.lang.Float getStdDev(FacetValueMap criteria,
                                           boolean population)

      Calculate the standard deviation of the data from a single metric. See http://en.wikipedia.org/wiki/Standard_deviation.

      The first argument, criteria, determines which metric is used to calculate the standard deviation. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
        `population` - false to calculate a sample standard deviation, true to calculate a population standard deviation
      Returns:
        the standard deviation of the data values

    - #### getVariance

          public java.lang.Float getVariance(java.lang.String criteria,
                                             boolean population)

      Calculate the variance of the data from a single metric. See http://en.wikipedia.org/wiki/Variance.

      The first argument, criteria, determines which metric is used to calculate the variance. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
        `population` - false to calculate a sample variance, true to calculate a population variance
      Returns:
        the variance of the data values

    - #### getVariance

          public java.lang.Float getVariance(FacetValueMap criteria,
                                             boolean population)

      Calculate the variance of the data from a single metric. See http://en.wikipedia.org/wiki/Variance.

      The first argument, criteria, determines which metric is used to calculate the variance. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
        `population` - false to calculate a sample variance, true to calculate a population variance
      Returns:
        the variance of the data values

    - #### getMax

          public java.lang.Float getMax(java.lang.String criteria)

      Calculate the maximum of the data from a single metric.

      The first argument, criteria, determines which metric is used to calculate the maximum. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the maximum of the data values

    - #### getMax

          public java.lang.Float getMax(FacetValueMap criteria)

      Calculate the maximum of the data from a single metric.

      The first argument, criteria, determines which metric is used to calculate the maximum. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the maximum of the data values

    - #### getMin

          public java.lang.Float getMin(java.lang.String criteria)

      Calculate the minimum of the data from a single metric.

      The first argument, criteria, determines which metric is used to calculate the minimum. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the minimum of the data values

    - #### getMin

          public java.lang.Float getMin(FacetValueMap criteria)

      Calculate the minimum of the data from a single metric.

      The first argument, criteria, determines which metric is used to calculate the minimum. The criteria may be a String that is the "id" of some `FacetValue` of the metric facet, or a `FacetValueMap` that contains an entry for the metric facet, or null to use the `valueProperty`. A FacetValueMap criteria may also be used to restrict the calculation to a slice of the data.

      Parameters:
        `criteria` - the "id" of a metric facet value, or a set of mappings describing the data over which to calculate, or null
      Returns:
        the minimum of the data values

    - #### getDataColor

          public java.lang.String getDataColor(int index,
                                               java.lang.String facetValueId,
                                               java.lang.String purpose)

      Get a color from the `dataColors` Array. The colors returned by this method define what colors are used for the data in the chart.

      This is not an override point, but you can provide your own function by setting a customizer with `setDataColorMapper()`.

      Parameters:
        `index` - index of the visual element to be colored
        `facetValueId` - id of the facet value to be colored
        `purpose` - purpose for the requested color - such as "legend", "line", "area", "points", etc.
      Returns:
        chosen color
      See Also:
        `ColorMapper`, `setDataLineColorMapper(com.smartgwt.client.widgets.chart.ColorMapper)`, `setDataGradientMapper(com.smartgwt.client.widgets.chart.GradientMapper)`

    - #### getDataColor

          public java.lang.String getDataColor(int index,
                                               java.lang.Integer facetValueId,
                                               java.lang.String purpose)

      See `getDataColor(int, java.lang.String, java.lang.String)`

    - #### getDataColor

          public java.lang.String getDataColor(int index,
                                               java.lang.Double facetValueId,
                                               java.lang.String purpose)

      See `getDataColor(int, java.lang.String, java.lang.String)`

    - #### getDataColor

          public java.lang.String getDataColor(int index,
                                               java.util.Date facetValueId,
                                               java.lang.String purpose)

      See `getDataColor(int, java.lang.String, java.lang.String)`

    - #### getDataColor

          public java.lang.String getDataColor(int index)

      See `getDataColor(int, java.lang.String, java.lang.String)`

    - #### setDataColorMapper

          public void setDataColorMapper(ColorMapper colorMapper)

      Sets a customizer to redefine what colors are used when rendering the chart data.
      Parameters:
        `colorMapper` - the customizer redefining what colors are used for chart data
      See Also:
        `getDataColor(int, java.lang.String, java.lang.String)`, `setDataLineColorMapper(com.smartgwt.client.widgets.chart.ColorMapper)`, `setDataGradientMapper(com.smartgwt.client.widgets.chart.GradientMapper)`

    - #### setDataLineColorMapper

          public void setDataLineColorMapper(ColorMapper colorMapper)

      Sets a customizer to redefine what colors are used when rendering lines for the chart data. No default implementation. If not defined or null is returned, the Framework will default to using the data color - either `getDataColor()` or the `ColorMapper` installed by `setDataColorMapper()` if one has been provided.
      Parameters:
        `colorMapper` - the customizer redefining what line colors are used for chart data
      See Also:
        `getDataColor(int, java.lang.String, java.lang.String)`, `setDataColorMapper(com.smartgwt.client.widgets.chart.ColorMapper)`, `setDataGradientMapper(com.smartgwt.client.widgets.chart.GradientMapper)`

    - #### setDataGradientMapper

          public void setDataGradientMapper(GradientMapper gradientMapper)

      Sets a customizer to redefine what gradients are used when rendering the chart data.
      Parameters:
        `gradientMapper` - the customizer redefining what gradients are used for chart data
      See Also:
        `getDataColor(int, java.lang.String, java.lang.String)`, `setDataLineColorMapper(com.smartgwt.client.widgets.chart.ColorMapper)`, `setDataGradientMapper(com.smartgwt.client.widgets.chart.GradientMapper)`

    - #### setDataLineWidthMapper

          public void setDataLineWidthMapper(LineWidthMapper lineWidthMapper)

      Sets a customizer to define what widths to use for data lines in the chart. No default implementation. If not defined or null is returned, the line width will be determined by the appropriate chart properties, such as `dataLineProperties`, `barProperties`, or `bubbleProperties`.
      Parameters:
        `lineWidthMapper` - the customizer defining what line widths are used for chart data
      See Also:
        `setDataLineColorMapper(com.smartgwt.client.widgets.chart.ColorMapper)`

    - #### setMinClusterSizeMapper

          public void setMinClusterSizeMapper(ClusterSizeMapper clusterSizeMapper)

      Sets a customizer to define the minimum cluster size (for clustered charts), or minimum bar thickness (for histogram or stacked charts) for the specified `data label facet` value. Only applicable to a column, bar, or histogram chart. There is no default customizer in place - only the chart-wide `minBarThickness`.

      Both this minimum and `minBarThickness` are used together to determine the effective minimum of the cluster or bar stack.

      Per-facet-value minimum cluster sizes aren't supported for `multi-axis` charts, in which multiple chart types are overlaid onto the same chart.

      Parameters:
        `clusterSizeMapper` - customizer defining the minimum size for each cluster

    - #### setLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject setLogicalStructure(com.smartgwt.logicalstructure.widgets.chart.FacetChartLogicalStructure s)

      Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.

    - #### getLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject getLogicalStructure()

      Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
      Specified by:
        `getLogicalStructure` in interface `LogicalStructure`
      Overrides:
        `getLogicalStructure` in class `DrawPane`