Configuration animation

Specifies animation options.

Type: Object

To make your gauge "live", enable animation for it by setting the enabled option of the animation object to true. In this instance, the gauge bars will appear in motion. In addition, within the animation object you can set an appropriate easing mode using the easing option, and specify how long the animation should run using the duration option.

Show Example:
jQuery

In this example, the animation performs in the 'linear' mode and lasts for ten seconds.

<div id="barGaugeContainer" style="height:400px;max-width:500px;margin:0px auto"></div>
$(function () {
    $("#barGaugeContainer").dxBarGauge({
        startValue: -50,
        endValue: 50,
        values: [4, -14.3, 42, 13, -29.1],
        palette: 'Soft',
        animation: {
            duration: 10000,
            easing: 'linear'
        }
    });
});

duration

Determines how long animation runs.

Type: Number
Default Value: 1000

When animation is enabled for a gauge, you can specify how long the animation must run. To do this, set the animation | duration option to a numeric value in milliseconds. The bigger the value, the slower the animation.

Show Example:
jQuery

In this example, gauge animation lasts for ten seconds because the duration option is set to 10000.

<div id="barGaugeContainer" style="height:400px;max-width:500px;margin:0px auto"></div>
$(function () {
    $("#barGaugeContainer").dxBarGauge({
        startValue: -50,
        endValue: 50,
        values: [4, -14.3, 42, 13, -29.1],
        palette: 'Vintage',
        animation: {
            duration: 10000
        }
    });
});

easing

Specifies the animation easing mode.

Type: String
Default Value: 'easeOutCubic'
Accepted Values: 'easeOutCubic' | 'linear'

The animation easing mode specifies the speed at which the animation progresses at different points within the animation. The following values are available.

  • easeOutCubic
    The animation progresses according to the Ease-out cubic interpolation function - quickly at the beginning and slowly at the end of the animation process.
  • linear
    The animation progresses at a constant pace.
Show Example:
jQuery

In the following example, you can see the difference between the 'ease-out cubic' and 'linear' algorithms of performing animation. To change the animation mode, choose the corresponding value from the drop-down menu in the bottom of the example. The animation performs in the chosen mode after you change the set of the gauge's values using the radio buttons below.

<div id="barGaugeContainer" style="height:400px; max-width:400px; margin: 0 auto"></div>
<div id="selectContainer" style="height:40px;width:250px;margin:5px auto;font-family:'Trebuchet MS',Arial,sans-serif;font-size:14px;text-align:center">
    Animation Mode:
    <select id="dropdownListSelector">
        <option value="easeOutCubic">easeOutCubic</option>
        <option value="linear">linear</option>
    </select><br />
    <input type="radio" name="displayedValues" value="1" checked> 1st Array
    <input type="radio" name="displayedValues" value="2"> 2nd Array
</div>
var values1 = [4, -14.3, 42, 13, -29.1];
var values2 = [-14, 26, 3.14, 19.84, -41.3];

$(function () {
    $("#barGaugeContainer").dxBarGauge({
        startValue: -50,
        endValue: 50,
        values: values1,
        palette: 'Bright',
        animation: {
            easing: 'easeOutCubic'
        }
    });

    $('#dropdownListSelector').change(function () {
        var gauge = $('#barGaugeContainer').dxBarGauge('instance');
        gauge.option({
            animation: { easing: this.value }
        });
    });

    $("input[name='displayedValues']").change(function () {
        var arrayIndex = +$(this).val();
        var gauge = $('#barGaugeContainer').dxBarGauge('instance');
        arrayIndex == 1 ? gauge.values(values1) : gauge.values(values2);
    });
});

enabled

Indicates whether or not animation is enabled.

Type: Boolean
Default Value: true

When this option is set to true, gauge indicators move smoothly to the specified values.

Show Example:
jQuery

Use the check box under the gauge to enable/disable animation. Then, choose which array of values to display on the gauge using the set of radio buttons.

<div id="barGaugeContainer" style="height:400px;max-width:500px;margin:0px auto"></div>
<div id="controlsContainer" style="height:40px;width:300px;margin:0px auto;font-family:'Trebuchet MS',Arial,sans-serif;font-size:14px;text-align:center">
    <input type="checkbox" id="animationEnabledCheckbox" checked> Enable Animation<br />
    <input type="radio" name="displayedValues" value="1" checked> 1st Array
    <input type="radio" name="displayedValues" value="2"> 2nd Array
</div>
var values1 = [4, -14.3, 42, 13, -29.1];
var values2 = [-14, 26, 3.14, 19.84, -41.3];

$(function () {
    $("#barGaugeContainer").dxBarGauge({
        startValue: -50,
        endValue: 50,
        values: values1,
        palette: 'Soft Pastel',
        animation: {
            enabled: true
        }
    });

    $('#animationEnabledCheckbox').change(function () {
        var gauge = $('#barGaugeContainer').dxBarGauge('instance');
        gauge.option({
            animation: {
                enabled: this.checked
            }
        });
    });

    $("input[name='displayedValues']").change(function () {
        var arrayIndex = +$(this).val();
        var gauge = $('#barGaugeContainer').dxBarGauge('instance');
        arrayIndex == 1 ? gauge.values(values1) : gauge.values(values2);
    });
});