@nebula.js/sn-bar-chart
Version:
Bar chart supernova
850 lines (581 loc) • 39.4 kB
Markdown
# API Reference
- [properties](#properties) : <code>object</code>
- [.version](#properties.version) : <code>string</code>
- [.barGrouping](#properties.barGrouping) : <code>object</code>
- [.grouping](#properties.barGrouping.grouping) : <code>'stacked'</code> \| <code>'grouped'</code>
- [.color](#properties.color) : <code>object</code>
- [.auto](#properties.color.auto) : <code>boolean</code>
- [.autoMinMax](#properties.color.autoMinMax) : <code>boolean</code>
- [.byDimDef](#properties.color.byDimDef) : [<code>byDimDef</code>](#byDimDef)
- [.byMeasureDef](#properties.color.byMeasureDef) : [<code>byMeasureDef</code>](#byMeasureDef)
- [.colorExpression](#properties.color.colorExpression) : <code>string</code>
- [.dimensionScheme](#properties.color.dimensionScheme) : <code>string</code>
- [.expressionIsColor](#properties.color.expressionIsColor) : <code>boolean</code>
- [.expressionLabel](#properties.color.expressionLabel) : <code>string</code>
- [.formatting](#properties.color.formatting)
- [.numFormatFromTemplate](#properties.color.formatting.numFormatFromTemplate) : <code>boolean</code>
- [.isCustomFormatted](#properties.color.formatting.isCustomFormatted) : <code>boolean</code>
- [.measureMin](#properties.color.measureMin) : <code>ValueExpression</code>
- [.measureMax](#properties.color.measureMax) : <code>ValueExpression</code>
- [.measureScheme](#properties.color.measureScheme) : <code>'sg'</code> \| <code>'sc'</code> \| <code>'dg'</code> \| <code>'dc'</code>
- [.mode](#properties.color.mode) : <code>'primary'</code> \| <code>'byDimension'</code> \| <code>'byExpression'</code> \| <code>'byMeasure'</code> \| <code>'byMultiple'</code>
- [.paletteColor](#properties.color.paletteColor) : [<code>paletteColor</code>](#paletteColor)
- [.persistent](#properties.color.persistent) : <code>boolean</code>
- [.reverseScheme](#properties.color.reverseScheme) : <code>boolean</code>
- ~~[.singleColor](#properties.color.singleColor) : <code>number</code>~~
- [.useBaseColors](#properties.color.useBaseColors) : <code>'off'</code> \| <code>'dimension'</code> \| <code>'measure'</code>
- [.useDimColVal](#properties.color.useDimColVal) : <code>boolean</code>
- [.useMeasureGradient](#properties.color.useMeasureGradient) : <code>boolean</code>
- [.components](#properties.components) : [<code>Array.<Component></code>](#Component)
- [.dataPoint](#properties.dataPoint) : <code>object</code>
- [.showLabels](#properties.dataPoint.showLabels) : <code>boolean</code>
- [.showSegmentLabels](#properties.dataPoint.showSegmentLabels) : <code>boolean</code>
- [.showTotalLabels](#properties.dataPoint.showTotalLabels) : <code>boolean</code>
- [.dimensionAxis](#properties.dimensionAxis) : <code>object</code>
- [.axisDisplayMode](#properties.dimensionAxis.axisDisplayMode) : <code>'auto'</code> \| <code>'custom'</code> \| <code>'max'</code>
- [.continuousAuto](#properties.dimensionAxis.continuousAuto) : <code>boolean</code>
- [.dock](#properties.dimensionAxis.dock) : <code>'near'</code> \| <code>'far'</code>
- [.label](#properties.dimensionAxis.label) : <code>'auto'</code> \| <code>'horizontal'</code> \| <code>'tilted'</code>
- [.maxVisibleItems](#properties.dimensionAxis.maxVisibleItems) : <code>number</code> \| <code>ValueExpression</code>
- [.show](#properties.dimensionAxis.show) : <code>'all'</code> \| <code>'labels'</code> \| <code>'title'</code> \| <code>'none'</code>
- [.footnote](#properties.footnote) : <code>string</code> \| <code>StringExpression</code>
- [.gridLine](#properties.gridLine) : <code>object</code>
- [.auto](#properties.gridLine.auto) : <code>boolean</code>
- [.spacing](#properties.gridLine.spacing) : <code>0</code> \| <code>1</code> \| <code>2</code> \| <code>3</code>
- [.legend](#properties.legend) : <code>object</code>
- [.dock](#properties.legend.dock) : <code>'auto'</code> \| <code>'right'</code> \| <code>'left'</code> \| <code>'bottom'</code> \| <code>'top'</code>
- [.show](#properties.legend.show) : <code>boolean</code>
- [.showTitle](#properties.legend.showTitle) : <code>boolean</code>
- [.measureAxis](#properties.measureAxis) : <code>object</code>
- [.autoMinMax](#properties.measureAxis.autoMinMax) : <code>boolean</code>
- [.dock](#properties.measureAxis.dock) : <code>'near'</code> \| <code>'far'</code>
- [.max](#properties.measureAxis.max) : <code>number</code> \| <code>ValueExpression</code>
- [.min](#properties.measureAxis.min) : <code>number</code> \| <code>ValueExpression</code>
- [.minMax](#properties.measureAxis.minMax) : <code>'min'</code> \| <code>'max'</code> \| <code>'minMax'</code>
- [.show](#properties.measureAxis.show) : <code>'all'</code> \| <code>'labels'</code> \| <code>'title'</code> \| <code>'none'</code>
- [.spacing](#properties.measureAxis.spacing) : <code>number</code>
- [.orientation](#properties.orientation) : <code>'vertical'</code> \| <code>'horizontal'</code>
- [.preferContinuousAxis](#properties.preferContinuousAxis) : <code>boolean</code>
- [.qHyperCubeDef](#properties.qHyperCubeDef) ⇐ <code>HyperCubeDef</code>
- [.qDimensions](#properties.qHyperCubeDef.qDimensions) : [<code>Array.<DimensionProperties></code>](#DimensionProperties)
- [.qMeasures](#properties.qHyperCubeDef.qMeasures) : [<code>Array.<MeasureProperties></code>](#MeasureProperties)
- [.qSuppressMissing](#properties.qHyperCubeDef.qSuppressMissing) : <code>boolean</code>
- [.qSuppressZero](#properties.qHyperCubeDef.qSuppressZero) : <code>boolean</code>
- [.refLine](#properties.refLine) : <code>object</code>
- [.refLines](#properties.refLine.refLines) : [<code>Array.<refLine></code>](#refLine)
- [.dimRefLines](#properties.refLine.dimRefLines) : [<code>Array.<dimRefLine></code>](#dimRefLine)
- [.scrollbar](#properties.scrollbar) : <code>'bar'</code> \| <code>'miniChart'</code> \| <code>'none'</code>
- [.scrollStartPos](#properties.scrollStartPos) : <code>number</code>
- [.showDetails](#properties.showDetails) : <code>boolean</code>
- [.showDisclaimer](#properties.showDisclaimer) : <code>boolean</code>
- [.showMiniChartForContinuousAxis](#properties.showMiniChartForContinuousAxis) : <code>boolean</code>
- [.showTitles](#properties.showTitles) : <code>boolean</code>
- [.subtitle](#properties.subtitle) : <code>string</code> \| <code>StringExpression</code>
- [.title](#properties.title) : <code>string</code> \| <code>StringExpression</code>
- [.tooltip](#properties.tooltip) : <code>object</code>
- [.auto](#properties.tooltip.auto) : <code>boolean</code>
- [.hideBasic](#properties.tooltip.hideBasic) : <code>boolean</code>
- [.data](#properties.tooltip.data) : <code>object</code>
- [.qHyperCubeDef](#properties.tooltip.data.qHyperCubeDef) : <code>HyperCubeDef</code>
- [.chart](#properties.tooltip.chart) : [<code>MasterVisualizationChart</code>](#MasterVisualizationChart)
- [.imageComponents](#properties.tooltip.imageComponents) : [<code>Array.<ImageComponent></code>](#ImageComponent)
---
<a name="properties.version"></a>
### properties.version : <code>string</code>
Current version of this generic object definition
**Kind**: static property of [<code>properties</code>](#properties)
<a name="properties.barGrouping"></a>
### properties.barGrouping : <code>object</code>
Bar grouping.
**Kind**: static property of [<code>properties</code>](#properties)
<a name="properties.barGrouping.grouping"></a>
#### barGrouping.grouping : <code>'stacked'</code> \| <code>'grouped'</code>
Group setting
**Kind**: static property of [<code>barGrouping</code>](#properties.barGrouping)
**Default**: <code>"grouped"</code>
<a name="properties.color"></a>
### properties.color : <code>object</code>
Color settings.
Most color options for visualizations are set in the color object in the options. You activate custom coloring by setting `"auto": false` which turns off auto-coloring.
If `"auto": true`, no other properties need to be defined in the color object.
Note: Some of the color properties are depending on which theme is currently being used.
**Kind**: static property of [<code>properties</code>](#properties)
- [.color](#properties.color) : <code>object</code>
- [.auto](#properties.color.auto) : <code>boolean</code>
- [.autoMinMax](#properties.color.autoMinMax) : <code>boolean</code>
- [.byDimDef](#properties.color.byDimDef) : [<code>byDimDef</code>](#byDimDef)
- [.byMeasureDef](#properties.color.byMeasureDef) : [<code>byMeasureDef</code>](#byMeasureDef)
- [.colorExpression](#properties.color.colorExpression) : <code>string</code>
- [.dimensionScheme](#properties.color.dimensionScheme) : <code>string</code>
- [.expressionIsColor](#properties.color.expressionIsColor) : <code>boolean</code>
- [.expressionLabel](#properties.color.expressionLabel) : <code>string</code>
- [.formatting](#properties.color.formatting)
- [.numFormatFromTemplate](#properties.color.formatting.numFormatFromTemplate) : <code>boolean</code>
- [.isCustomFormatted](#properties.color.formatting.isCustomFormatted) : <code>boolean</code>
- [.measureMin](#properties.color.measureMin) : <code>ValueExpression</code>
- [.measureMax](#properties.color.measureMax) : <code>ValueExpression</code>
- [.measureScheme](#properties.color.measureScheme) : <code>'sg'</code> \| <code>'sc'</code> \| <code>'dg'</code> \| <code>'dc'</code>
- [.mode](#properties.color.mode) : <code>'primary'</code> \| <code>'byDimension'</code> \| <code>'byExpression'</code> \| <code>'byMeasure'</code> \| <code>'byMultiple'</code>
- [.paletteColor](#properties.color.paletteColor) : [<code>paletteColor</code>](#paletteColor)
- [.persistent](#properties.color.persistent) : <code>boolean</code>
- [.reverseScheme](#properties.color.reverseScheme) : <code>boolean</code>
- ~~[.singleColor](#properties.color.singleColor) : <code>number</code>~~
- [.useBaseColors](#properties.color.useBaseColors) : <code>'off'</code> \| <code>'dimension'</code> \| <code>'measure'</code>
- [.useDimColVal](#properties.color.useDimColVal) : <code>boolean</code>
- [.useMeasureGradient](#properties.color.useMeasureGradient) : <code>boolean</code>
<a name="properties.color.auto"></a>
#### color.auto : <code>boolean</code>
Set to use automatic coloring.
When `"auto": true`, color settings are based on the visualization used and the number of dimensions
and measures, that is, the settings are not fixed, but are dependent on the data input.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>true</code>
<a name="properties.color.autoMinMax"></a>
#### color.autoMinMax : <code>boolean</code>
Set to false to define custom color range. Custom color range is only applicable when coloring is by measure (`"mode": "byMeasure"`) or by expression (`"mode": "byExpression"`).
When coloring is by expression, `"expressionIsColor": "false"` must be set for custom color range to work.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>true</code>
<a name="properties.color.byDimDef"></a>
#### color.byDimDef : [<code>byDimDef</code>](#byDimDef)
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>undefined</code>
<a name="properties.color.byMeasureDef"></a>
#### color.byMeasureDef : [<code>byMeasureDef</code>](#byMeasureDef)
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>undefined</code>
<a name="properties.color.colorExpression"></a>
#### color.colorExpression : <code>string</code>
Sets the color expression to be used when `"mode": "byExpression"` is defined.
Expression can evaluate either to a numerical value or a color code if `"expressionIsColor": true`.
Supported formats are: `RGB`, `ARGB` and `HSL`
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>"undefined"</code>
**Example**
```js
"colorExpression": "=if(sum(Sales)<avg(Total aggr(sum(Sales),Product)),rgb(255,0,0),RGB(0,255,0))"
```
<a name="properties.color.dimensionScheme"></a>
#### color.dimensionScheme : <code>string</code>
Color scheme when `"mode": "byDimension"` or `"mode": "byMultiple"` (`"12"` or `"100"` for most themes).
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>"12"</code>
<a name="properties.color.expressionIsColor"></a>
#### color.expressionIsColor : <code>boolean</code>
Set to define whether the result of the expression is a valid CSS3 color.
Only applicable when `"mode": "byExpression"`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>true</code>
<a name="properties.color.expressionLabel"></a>
#### color.expressionLabel : <code>string</code>
Label to be defined on tool tips when using a coloring expression.
Only used if `"expressionIsColor": false`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>""</code>
<a name="properties.color.formatting"></a>
#### color.formatting
Color by measure number formatting options
**Kind**: static property of [<code>color</code>](#properties.color)
- [.formatting](#properties.color.formatting)
- [.numFormatFromTemplate](#properties.color.formatting.numFormatFromTemplate) : <code>boolean</code>
- [.isCustomFormatted](#properties.color.formatting.isCustomFormatted) : <code>boolean</code>
<a name="properties.color.formatting.numFormatFromTemplate"></a>
##### formatting.numFormatFromTemplate : <code>boolean</code>
When enabled, the number format to use can be selected from multiple predefined formats based on the desired type (number, date).
**Kind**: static property of [<code>formatting</code>](#properties.color.formatting)
**Default**: <code>true</code>
<a name="properties.color.formatting.isCustomFormatted"></a>
##### formatting.isCustomFormatted : <code>boolean</code>
If true, the client formatting will be toggled off
**Kind**: static property of [<code>formatting</code>](#properties.color.formatting)
**Default**: <code>undefined</code>
<a name="properties.color.measureMin"></a>
#### color.measureMin : <code>ValueExpression</code>
Set the min value for the color range.
Only applicable if `"autoMinMax": false`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>undefined</code>
<a name="properties.color.measureMax"></a>
#### color.measureMax : <code>ValueExpression</code>
Set the max value for the color range.
Only applicable if `"autoMinMax": false`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>undefined</code>
<a name="properties.color.measureScheme"></a>
#### color.measureScheme : <code>'sg'</code> \| <code>'sc'</code> \| <code>'dg'</code> \| <code>'dc'</code>
Color scheme when `"mode": "byMeasure"`. Can be one of:
- `sg`: (sequential gradient) the transition between the different color groups is made using different shades of colors. High measure values have darker hues
- `sc`: (sequential classes) the transition between the different color groups is made using distinctly different colors.
- `dg`: (diverging gradient) used when working with data that is ordered from low to high, for instance, to show the relationship between different areas on a map. Low and high values have dark colors, mid-range colors are light.
- `dc`: (diverging classes) can be seen as two sequential classes combined, with the mid-range shared. The two extremes, high and low, are emphasized with dark colors with contrasting hues, and the mid-range critical values are emphasized with light colors.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>"sg"</code>
<a name="properties.color.mode"></a>
#### color.mode : <code>'primary'</code> \| <code>'byDimension'</code> \| <code>'byExpression'</code> \| <code>'byMeasure'</code> \| <code>'byMultiple'</code>
Sets the coloring mode for the visualization when auto-coloring has been switched off (`"auto": false`). Can be one of:
- `primary`: a single color (by default blue) is used for all items in the chart. In visualizations that do not benefit from multiple colors (bar charts with one dimension and scatter plots), single color is the default setting.
- `byDimension`: coloring is based upon the amount of dimension values. Details are set in the `"byDimDef"` property.
!Note: `byDimension` can only be used in conjunction with an attribute dimension on the dimension to color by, as shown in the example below.
```json
{
"qDef": {
"qFieldDefs": ["NetScoreName"]
},
"qAttributeDimensions": [
{
"qDef": "NetScoreName",
"id": "colorByAlternative",
"label": "Year"
}
]
}
```
- `byExpression`: coloring is based on an expression, which in most cases is a color code. Details are set in the `"expressionIsColor"`, `"expressionLabel`" and `"colorExpression"` properties.
- `byMeasure`: coloring is based on the measure value. Details are set in the `"byMeasureDef"` property.
- `byMultiple`: can be used when more than one measure is used. By default, 12 colors are used for the dimensions. The colors are reused when there are more than 12 dimension values.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>"primary"</code>
<a name="properties.color.paletteColor"></a>
#### color.paletteColor : [<code>paletteColor</code>](#paletteColor)
The paletteColor object is used to define the color when you color by single color `("mode": "primary")`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>{ index: 6 }</code>
<a name="properties.color.persistent"></a>
#### color.persistent : <code>boolean</code>
Set to use persistent colors on data points between selections. Only applicable when using one dimension and when `"mode": "byDimension"` or when `"mode": "byMultiple"`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>false</code>
<a name="properties.color.reverseScheme"></a>
#### color.reverseScheme : <code>boolean</code>
Set to reverse the color scheme.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>false</code>
<a name="properties.color.singleColor"></a>
#### ~~color.singleColor : <code>number</code>~~
**_Use `paletteColor` instead._**
**Kind**: static property of [<code>color</code>](#properties.color)
<a name="properties.color.useBaseColors"></a>
#### color.useBaseColors : <code>'off'</code> \| <code>'dimension'</code> \| <code>'measure'</code>
Use colors encoded in master items.
Only applicable when `"mode": "primary"` or `"mode": "byMultiple"` has been defined.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>"off"</code>
<a name="properties.color.useDimColVal"></a>
#### color.useDimColVal : <code>boolean</code>
Set to true if you want to apply the colors defined for library dimensions when used.
Only applicable if `'colorMode': 'byDimension'`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>true</code>
<a name="properties.color.useMeasureGradient"></a>
#### color.useMeasureGradient : <code>boolean</code>
Set to true if you want to apply the colors defined for library measures when used. Only applicable if `"mode": "byMeasure"`.
**Kind**: static property of [<code>color</code>](#properties.color)
**Default**: <code>true</code>
<a name="properties.components"></a>
### properties.components : [<code>Array.<Component></code>](#Component)
Styling of chart components.
**Kind**: static property of [<code>properties</code>](#properties)
<a name="properties.dataPoint"></a>
### properties.dataPoint : <code>object</code>
Data point settings.
**Kind**: static property of [<code>properties</code>](#properties)
- [.dataPoint](#properties.dataPoint) : <code>object</code>
- [.showLabels](#properties.dataPoint.showLabels) : <code>boolean</code>
- [.showSegmentLabels](#properties.dataPoint.showSegmentLabels) : <code>boolean</code>
- [.showTotalLabels](#properties.dataPoint.showTotalLabels) : <code>boolean</code>
<a name="properties.dataPoint.showLabels"></a>
#### dataPoint.showLabels : <code>boolean</code>
Show labels on data points
**Kind**: static property of [<code>dataPoint</code>](#properties.dataPoint)
**Default**: <code>false</code>
<a name="properties.dataPoint.showSegmentLabels"></a>
#### dataPoint.showSegmentLabels : <code>boolean</code>
Show segment labels
**Kind**: static property of [<code>dataPoint</code>](#properties.dataPoint)
**Default**: <code>false</code>
<a name="properties.dataPoint.showTotalLabels"></a>
#### dataPoint.showTotalLabels : <code>boolean</code>
Show total labels
**Kind**: static property of [<code>dataPoint</code>](#properties.dataPoint)
**Default**: <code>true</code>
<a name="properties.dimensionAxis"></a>
### properties.dimensionAxis : <code>object</code>
Dimension axis settings.
**Kind**: static property of [<code>properties</code>](#properties)
- [.dimensionAxis](#properties.dimensionAxis) : <code>object</code>
- [.axisDisplayMode](#properties.dimensionAxis.axisDisplayMode) : <code>'auto'</code> \| <code>'custom'</code> \| <code>'max'</code>
- [.continuousAuto](#properties.dimensionAxis.continuousAuto) : <code>boolean</code>
- [.dock](#properties.dimensionAxis.dock) : <code>'near'</code> \| <code>'far'</code>
- [.label](#properties.dimensionAxis.label) : <code>'auto'</code> \| <code>'horizontal'</code> \| <code>'tilted'</code>
- [.maxVisibleItems](#properties.dimensionAxis.maxVisibleItems) : <code>number</code> \| <code>ValueExpression</code>
- [.show](#properties.dimensionAxis.show) : <code>'all'</code> \| <code>'labels'</code> \| <code>'title'</code> \| <code>'none'</code>
<a name="properties.dimensionAxis.axisDisplayMode"></a>
#### dimensionAxis.axisDisplayMode : <code>'auto'</code> \| <code>'custom'</code> \| <code>'max'</code>
Set to specify axis display mode (number of bars).
**Kind**: static property of [<code>dimensionAxis</code>](#properties.dimensionAxis)
**Default**: <code>"auto"</code>
<a name="properties.dimensionAxis.continuousAuto"></a>
#### dimensionAxis.continuousAuto : <code>boolean</code>
Continuous setting used for toggling between auto and custom setting
**Kind**: static property of [<code>dimensionAxis</code>](#properties.dimensionAxis)
**Default**: <code>true</code>
<a name="properties.dimensionAxis.dock"></a>
#### dimensionAxis.dock : <code>'near'</code> \| <code>'far'</code>
Axis docking position
**Kind**: static property of [<code>dimensionAxis</code>](#properties.dimensionAxis)
**Default**: <code>"near"</code>
<a name="properties.dimensionAxis.label"></a>
#### dimensionAxis.label : <code>'auto'</code> \| <code>'horizontal'</code> \| <code>'tilted'</code>
Label orientation
**Kind**: static property of [<code>dimensionAxis</code>](#properties.dimensionAxis)
**Default**: <code>"auto"</code>
<a name="properties.dimensionAxis.maxVisibleItems"></a>
#### dimensionAxis.maxVisibleItems : <code>number</code> \| <code>ValueExpression</code>
Only visible when axisDisplayMode is custom.
Max = 10000 / (numDims+numMeasures)
**Kind**: static property of [<code>dimensionAxis</code>](#properties.dimensionAxis)
**Default**: <code>10</code>
<a name="properties.dimensionAxis.show"></a>
#### dimensionAxis.show : <code>'all'</code> \| <code>'labels'</code> \| <code>'title'</code> \| <code>'none'</code>
Labels and title
**Kind**: static property of [<code>dimensionAxis</code>](#properties.dimensionAxis)
**Default**: <code>"all"</code>
<a name="properties.footnote"></a>
### properties.footnote : <code>string</code> \| <code>StringExpression</code>
Visualization footnote.
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>""</code>
<a name="properties.gridLine"></a>
### properties.gridLine : <code>object</code>
Grid lines settings.
**Kind**: static property of [<code>properties</code>](#properties)
- [.gridLine](#properties.gridLine) : <code>object</code>
- [.auto](#properties.gridLine.auto) : <code>boolean</code>
- [.spacing](#properties.gridLine.spacing) : <code>0</code> \| <code>1</code> \| <code>2</code> \| <code>3</code>
<a name="properties.gridLine.auto"></a>
#### gridLine.auto : <code>boolean</code>
Automatic grid line spacing.
**Kind**: static property of [<code>gridLine</code>](#properties.gridLine)
**Default**: <code>true</code>
<a name="properties.gridLine.spacing"></a>
#### gridLine.spacing : <code>0</code> \| <code>1</code> \| <code>2</code> \| <code>3</code>
Grid line spacing. Used only when auto is set to false.
**Kind**: static property of [<code>gridLine</code>](#properties.gridLine)
**Default**: <code>2</code>
<a name="properties.legend"></a>
### properties.legend : <code>object</code>
Legend settings.
**Kind**: static property of [<code>properties</code>](#properties)
- [.legend](#properties.legend) : <code>object</code>
- [.dock](#properties.legend.dock) : <code>'auto'</code> \| <code>'right'</code> \| <code>'left'</code> \| <code>'bottom'</code> \| <code>'top'</code>
- [.show](#properties.legend.show) : <code>boolean</code>
- [.showTitle](#properties.legend.showTitle) : <code>boolean</code>
<a name="properties.legend.dock"></a>
#### legend.dock : <code>'auto'</code> \| <code>'right'</code> \| <code>'left'</code> \| <code>'bottom'</code> \| <code>'top'</code>
Sets the legend position.
**Kind**: static property of [<code>legend</code>](#properties.legend)
**Default**: <code>"auto"</code>
<a name="properties.legend.show"></a>
#### legend.show : <code>boolean</code>
Set to show the legend.
**Kind**: static property of [<code>legend</code>](#properties.legend)
**Default**: <code>true</code>
<a name="properties.legend.showTitle"></a>
#### legend.showTitle : <code>boolean</code>
Show the legend title.
**Kind**: static property of [<code>legend</code>](#properties.legend)
**Default**: <code>true</code>
<a name="properties.measureAxis"></a>
### properties.measureAxis : <code>object</code>
Measure axis settings.
**Kind**: static property of [<code>properties</code>](#properties)
- [.measureAxis](#properties.measureAxis) : <code>object</code>
- [.autoMinMax](#properties.measureAxis.autoMinMax) : <code>boolean</code>
- [.dock](#properties.measureAxis.dock) : <code>'near'</code> \| <code>'far'</code>
- [.max](#properties.measureAxis.max) : <code>number</code> \| <code>ValueExpression</code>
- [.min](#properties.measureAxis.min) : <code>number</code> \| <code>ValueExpression</code>
- [.minMax](#properties.measureAxis.minMax) : <code>'min'</code> \| <code>'max'</code> \| <code>'minMax'</code>
- [.show](#properties.measureAxis.show) : <code>'all'</code> \| <code>'labels'</code> \| <code>'title'</code> \| <code>'none'</code>
- [.spacing](#properties.measureAxis.spacing) : <code>number</code>
<a name="properties.measureAxis.autoMinMax"></a>
#### measureAxis.autoMinMax : <code>boolean</code>
Automatic max/min
**Kind**: static property of [<code>measureAxis</code>](#properties.measureAxis)
**Default**: <code>true</code>
<a name="properties.measureAxis.dock"></a>
#### measureAxis.dock : <code>'near'</code> \| <code>'far'</code>
Axis docking position
**Kind**: static property of [<code>measureAxis</code>](#properties.measureAxis)
**Default**: <code>"near"</code>
<a name="properties.measureAxis.max"></a>
#### measureAxis.max : <code>number</code> \| <code>ValueExpression</code>
Axis max value. `"autoMinMax"` must be set to false and `"minMax"`
must be set to `"max"` or `"minMax"` to use this property
**Kind**: static property of [<code>measureAxis</code>](#properties.measureAxis)
**Default**: <code>10</code>
<a name="properties.measureAxis.min"></a>
#### measureAxis.min : <code>number</code> \| <code>ValueExpression</code>
Axis min value. `"autoMinMax"` must be set to false and `"minMax"`
must be set to `"min"` or `"minMax"` to use this property
**Kind**: static property of [<code>measureAxis</code>](#properties.measureAxis)
**Default**: <code>0</code>
<a name="properties.measureAxis.minMax"></a>
#### measureAxis.minMax : <code>'min'</code> \| <code>'max'</code> \| <code>'minMax'</code>
Set custom max/min
**Kind**: static property of [<code>measureAxis</code>](#properties.measureAxis)
**Default**: <code>"min"</code>
<a name="properties.measureAxis.show"></a>
#### measureAxis.show : <code>'all'</code> \| <code>'labels'</code> \| <code>'title'</code> \| <code>'none'</code>
Labels and title
**Kind**: static property of [<code>measureAxis</code>](#properties.measureAxis)
**Default**: <code>"all"</code>
<a name="properties.measureAxis.spacing"></a>
#### measureAxis.spacing : <code>number</code>
Axis scale
**Kind**: static property of [<code>measureAxis</code>](#properties.measureAxis)
**Default**: <code>1</code>
<a name="properties.orientation"></a>
### properties.orientation : <code>'vertical'</code> \| <code>'horizontal'</code>
Orientation setting.
If vertical, the dimension axis can only be docked on bottom or top and measure axis on left or right.
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>"vertical"</code>
<a name="properties.preferContinuousAxis"></a>
### properties.preferContinuousAxis : <code>boolean</code>
Chart axis setting to control preference of scale on a dimensional axis.
If true, the scale along the dimensional axis will be continuous if
the data supports it, discrete otherwise.
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>true</code>
<a name="properties.qHyperCubeDef"></a>
### properties.qHyperCubeDef ⇐ <code>HyperCubeDef</code>
Extends `HyperCubeDef`, see Engine API: `HyperCubeDef`.
**Kind**: static property of [<code>properties</code>](#properties)
**Extends**: <code>HyperCubeDef</code>
- [.qHyperCubeDef](#properties.qHyperCubeDef) ⇐ <code>HyperCubeDef</code>
- [.qDimensions](#properties.qHyperCubeDef.qDimensions) : [<code>Array.<DimensionProperties></code>](#DimensionProperties)
- [.qMeasures](#properties.qHyperCubeDef.qMeasures) : [<code>Array.<MeasureProperties></code>](#MeasureProperties)
- [.qSuppressMissing](#properties.qHyperCubeDef.qSuppressMissing) : <code>boolean</code>
- [.qSuppressZero](#properties.qHyperCubeDef.qSuppressZero) : <code>boolean</code>
<a name="properties.qHyperCubeDef.qDimensions"></a>
#### qHyperCubeDef.qDimensions : [<code>Array.<DimensionProperties></code>](#DimensionProperties)
**Kind**: static property of [<code>qHyperCubeDef</code>](#properties.qHyperCubeDef)
<a name="properties.qHyperCubeDef.qMeasures"></a>
#### qHyperCubeDef.qMeasures : [<code>Array.<MeasureProperties></code>](#MeasureProperties)
**Kind**: static property of [<code>qHyperCubeDef</code>](#properties.qHyperCubeDef)
<a name="properties.qHyperCubeDef.qSuppressMissing"></a>
#### qHyperCubeDef.qSuppressMissing : <code>boolean</code>
**Kind**: static property of [<code>qHyperCubeDef</code>](#properties.qHyperCubeDef)
**Default**: <code>true</code>
<a name="properties.qHyperCubeDef.qSuppressZero"></a>
#### qHyperCubeDef.qSuppressZero : <code>boolean</code>
**Kind**: static property of [<code>qHyperCubeDef</code>](#properties.qHyperCubeDef)
**Default**: <code>false</code>
<a name="properties.refLine"></a>
### properties.refLine : <code>object</code>
Reference lines settings
**Kind**: static property of [<code>properties</code>](#properties)
- [.refLine](#properties.refLine) : <code>object</code>
- [.refLines](#properties.refLine.refLines) : [<code>Array.<refLine></code>](#refLine)
- [.dimRefLines](#properties.refLine.dimRefLines) : [<code>Array.<dimRefLine></code>](#dimRefLine)
<a name="properties.refLine.refLines"></a>
#### refLine.refLines : [<code>Array.<refLine></code>](#refLine)
Array of measure based reference line definitions
**Kind**: static property of [<code>refLine</code>](#properties.refLine)
<a name="properties.refLine.dimRefLines"></a>
#### refLine.dimRefLines : [<code>Array.<dimRefLine></code>](#dimRefLine)
Array of dimension based reference line definitions
**Kind**: static property of [<code>refLine</code>](#properties.refLine)
<a name="properties.scrollbar"></a>
### properties.scrollbar : <code>'bar'</code> \| <code>'miniChart'</code> \| <code>'none'</code>
Sets the style of the scroll bar
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>"miniChart"</code>
<a name="properties.scrollStartPos"></a>
### properties.scrollStartPos : <code>number</code>
Scroll Alignment. If 0, then the scrollbar will start at the left/top of the chart,
if 1 it starts at the right/bottom of the chart. Generally decides if the scroll
starts at the beginning or end of the data
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>0</code>
<a name="properties.showDetails"></a>
### properties.showDetails : <code>boolean</code>
Show visualization details toggle
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>true</code>
<a name="properties.showDisclaimer"></a>
### properties.showDisclaimer : <code>boolean</code>
Show visualization disclaimer toggle
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>true</code>
<a name="properties.showMiniChartForContinuousAxis"></a>
### properties.showMiniChartForContinuousAxis : <code>boolean</code>
Chart axis setting to turn on/off the mini chart for continuous axis.
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>true</code>
<a name="properties.showTitles"></a>
### properties.showTitles : <code>boolean</code>
Show title for the visualization
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>true</code>
<a name="properties.subtitle"></a>
### properties.subtitle : <code>string</code> \| <code>StringExpression</code>
Visualization subtitle.
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>""</code>
<a name="properties.title"></a>
### properties.title : <code>string</code> \| <code>StringExpression</code>
Visualization title.
**Kind**: static property of [<code>properties</code>](#properties)
**Default**: <code>""</code>
<a name="properties.tooltip"></a>
### properties.tooltip : <code>object</code>
Custom tooltip properties
**Kind**: static property of [<code>properties</code>](#properties)
- [.tooltip](#properties.tooltip) : <code>object</code>
- [.auto](#properties.tooltip.auto) : <code>boolean</code>
- [.hideBasic](#properties.tooltip.hideBasic) : <code>boolean</code>
- [.data](#properties.tooltip.data) : <code>object</code>
- [.qHyperCubeDef](#properties.tooltip.data.qHyperCubeDef) : <code>HyperCubeDef</code>
- [.chart](#properties.tooltip.chart) : [<code>MasterVisualizationChart</code>](#MasterVisualizationChart)
- [.imageComponents](#properties.tooltip.imageComponents) : [<code>Array.<ImageComponent></code>](#ImageComponent)
<a name="properties.tooltip.auto"></a>
#### tooltip.auto : <code>boolean</code>
Toggle for using custom tooltip or regular tooltip
**Kind**: static property of [<code>tooltip</code>](#properties.tooltip)
**Default**: <code>true</code>
<a name="properties.tooltip.hideBasic"></a>
#### tooltip.hideBasic : <code>boolean</code>
Toggle for hiding basic information from custom tooltip
**Kind**: static property of [<code>tooltip</code>](#properties.tooltip)
**Default**: <code>false</code>
<a name="properties.tooltip.data"></a>
#### tooltip.data : <code>object</code>
Data for the custom tooltip.
**Kind**: static property of [<code>tooltip</code>](#properties.tooltip)
<a name="properties.tooltip.data.qHyperCubeDef"></a>
##### data.qHyperCubeDef : <code>HyperCubeDef</code>
A hypercube definition containing measures to be displayed in the custom tooltip.
Extends `HyperCubeDef`, see Engine API: `HyperCubeDef`.
**Kind**: static property of [<code>data</code>](#properties.tooltip.data)
**Default**: <code>undefined</code>
<a name="properties.tooltip.chart"></a>
#### tooltip.chart : [<code>MasterVisualizationChart</code>](#MasterVisualizationChart)
The chart object is used to define the chart displayed by the custom tooltip.
**Kind**: static property of [<code>tooltip</code>](#properties.tooltip)
**Default**: <code>undefined</code>
<a name="properties.tooltip.imageComponents"></a>
#### tooltip.imageComponents : [<code>Array.<ImageComponent></code>](#ImageComponent)
The imageComponents objects are used to define the images displayed by the custom tooltip.
**Kind**: static property of [<code>tooltip</code>](#properties.tooltip)
**Default**: <code>undefined</code>
# Definitions
<a name="Component"></a>
## Component : [<code>Bar</code>](#Bar) \| [<code>Label</code>](#Label) \| [<code>Axis</code>](#Axis) \| [<code>Legend</code>](#Legend)
**Kind**: global typedef
<a name="AttributeExpressionProperties"></a>
## AttributeExpressionProperties : [<code>ColorAttributes</code>](#ColorAttributes) \| [<code>CustomTooltipAttributes</code>](#CustomTooltipAttributes)
**Kind**: global typedef
<a name="Modifier"></a>
## Modifier : [<code>Accumulation</code>](#Accumulation) \| [<code>Difference</code>](#Difference) \| [<code>MovingAverage</code>](#MovingAverage)
**Kind**: global typedef