# waterfallchart properties

Information noteSTABLE.   
  
This API is reliable and breaking changes are unlikely.

waterfallchart()

These are the properties used by Qlik Sense waterfall charts.

## Version history

Version history

| Version state | Details |
| --- | --- |
| Introduced | Qlik Sense September 2017 |

## Properties

### showTitles

Type: Boolean

Show title for the visualization.

Default: true.

### showDetails

Type: Boolean

Sets if visualization details should be shown.

Default: false

### title

Type: String | qStringExpression

Visualization title shown if "showTitles": true.

### subtitle

Type: String | qStringExpression

Visualization subtitle shown if "showTitles": true.

### footnote

Type: String | qStringExpression

Visualization footnote shown if "showTitles": true.

### disableNavMenu

Type: Boolean

Disables the hover menu in the visualization.

Default: false

### qHyperCubeDef

Type: Object

The hypercube definition used by most visualizations.

A subset of the properties available in the qHyperCubeDef is presented here. For complete documentation of all available properties, see [Engine API: HyperCubeDef](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/EngineJSONAPI/Content/models-hypercubedef.htm).

Information noteThe maximum number of measures that can be set for this chart type is 15.

#### qMeasures

Type: Array

Description: Extends NxMeasure, see [Engine API: NxMeasure](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/EngineJSONAPI/Content/models-nxmeasure.htm).

Additional properties

* **qDef**

  Type: Object

  Description: Extends NxInlineMeasureDef, see [Engine API: NxInlineMeasureDef](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/EngineJSONAPI/Content/models-nxinlinemeasuredef.htm).

  qDef Properties

  | Name | Type | Description |
  | --- | --- | --- |
  | autoSort | Boolean | Set to automatically sort the measure.<br><br>Default: true |
  | cId | String | ID used by the client. Must be unique within the current chart. |
  | numFormatFromTemplate | Boolean | When enabled, the number format to use can be selected from multiple predefined formats based on the desired type: number or date.<br><br>Default: true |
  | isCustomFormatted | Boolean | Set to true to toggle off the default client formatting. |
  | othersLabel | StringExpressionContainer | String expression container. |

* **qAttributeExpressions**

  Type: Array

  Extends NxAttrExprDef, see [Engine API: NxAttrExprDef](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/EngineJSONAPI/Content/models-nxattrexprdef.htm).

  id

  Type: String

  One of:

  * cellBackgroundColor: for attribute expression, expression for background color of table cell.
  * cellForegroundColor: for attribute expression, expression for text color of table cell.

#### qLayoutExclude

Type: Object

#### customErrorMessage

Type: Object

Set to define custom error messages.

* **calcCondition**

  Type: String

  Description: Deprecated. Use qCalcCondition.qMsg instead. Set to customize the calculation condition unfilled message.

### measureAxis

Type: Object

Measure axis settings.

measureAxis properties

| Name | Type | Description |
| --- | --- | --- |
| showBounds | Boolean | Set to show min and max on axis. |
| dock | String | Sets the axis docking position. Can be one of:<br><br><ul> <li><span>near</span> </li> <li><span>far</span> </li> </ul><br><br>Default: near |
| spacing | Number | Set the axis scale:<br><br>Default: 1 |
| autoMinMax | Boolean | Set to use automatic min/max for measure color.<br><br>Default: true |
| minMax | String | Set custom max/min. Can be one of:<br><br><ul> <li><span>min</span> </li> <li><span>max</span> </li> <li><span>minMax</span> </li> </ul><br><br>Default: min |
| min | ValueExpressionContainer | Set the min value for the range. |
| max | ValueExpressionContainer | Set the max value for the range. |

### gridlines

Type: Object

Grid line settings.

gridLines settings

| Name | Type | Description |
| --- | --- | --- |
| auto | Boolean | Set to show grid lines.<br><br>Default: true |
| spacing | Integer | Defines the grid line spacing. Used when "auto": false. Can be one of:<br><br><ul> <li><span>0</span>: no lines</li> <li><span>1</span>: wide</li> <li><span>2</span>: medium</li> <li><span>3</span>: narrow</li> </ul><br><br>Default: 2 |

### color

Type: Object

Color settings for the waterfall chart.

color properties

| Name | Type | Description |
| --- | --- | --- |
| positiveValue | Object | Color for positive values.<br><br>Properties:<br><br><ul> <li><strong>color</strong>: <p><span>Type: String</span></p>Description: Color as hex string.  Default: <span>#0000FF</span></li> <li><strong>index</strong>: <p><span>Type: Integer</span></p>Description: Index in palette. Default: <span>6</span></li> </ul> |
| negativeValue | Object | Color for negative values.<br><br>Properties:<br><br><ul> <li><strong>color</strong>: <p><span>Type: String</span></p>Description: Color as hex string.  Default: <span>#FF0000</span></li> <li><strong>index</strong>: <p><span>Type: Integer</span></p>Description: Index in palette. Default: <span>6</span></li> </ul> |
| subtotalValue | Object | Color for subtotal values.<br><br>Properties:<br><br><ul> <li><strong>color</strong>: <p><span>Type: String</span></p>Description: Color as hex string.  Default: <span>#C3C3C3</span></li> <li><strong>index</strong>: <p><span>Type: Integer</span></p>Description: Index in palette. Default: <span>6</span></li> </ul> |

### legend

Type: Object

Legend settings.

legend properties

| Name | Type | Description |
| --- | --- | --- |
| show | Boolean | Set to show the legend.<br><br>Default: true |
| dock | String | Sets the legend position. Can be one of:<br><br><ul> <li><span>auto</span> </li> <li><span>right</span> </li> <li><span>left</span> </li> <li><span>bottom</span> </li> <li><span>top</span> </li> </ul><br><br>Default: auto |
| showTitle | Boolean | Show the legend title.<br><br>Default: true |

## Example using Visualization API

Tip noteFor more examples of how to create waterfall charts on the fly, see [Mashups: Creating waterfall charts](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/Mashups/Content/Sense_Mashups/Create/Visualizations/Waterfall/create-waterfall.htm).

In this example we create a basic waterfall chart, containing of three measures, with a custom title and color legend switched off.

```
app.visualization.create(
  'waterfallchart',
  [
    {
      "qDef": {
        "qLabel": "Expected",
        "qDef": "Avg(ExpPutts)",
        "valueType": "NORMAL"
      }
    },
    {
      "qDef": {
        "qLabel": "Actual",
        "qDef": "Avg(Putts)",
        "valueType": "INVERSE"
      }
    },
    {
      "qDef": {
        "qLabel": "Shots gained or lost",
        "qDef": "Avg(ExpPutts-Putts)",
        "valueType": "SUBTOTAL"
      }
    }
  ],
  {
    "showTitles": true,
    "title": "Shots gained or lost putting",
    "legend": {
      "show": false
    }
  }
).then(function(vis){
  vis.show("QV01");
});
```