React Chart - Loading Indicator
When the Chart visualizes local data, loading is instant. But when the Chart is bound to a remote data source, loading may take a considerable amount of time. To keep the viewer's attention, the Chart can display a loading indicator.

To activate the loading indicator, assign true to the loadingIndicator.enabled property. When activated, the indicator will be displayed or hidden automatically as the chart's data is updated.
jQuery
$(function() {
    $("#chartContainer").dxChart({
        // ...
        loadingIndicator: {
            enabled: true
        }
    });
});Angular
<dx-chart ... >
    <dxo-loading-indicator [enabled]="true"></dxo-loading-indicator>
</dx-chart>
import { DxChartModule } from "devextreme-angular";
// ...
export class AppComponent {
    // ...
}
@NgModule({
    imports: [
        // ...
        DxChartModule
    ],
    // ...
})Vue
<template> 
    <DxChart ... >
        <DxLoadingIndicator
            :enabled="true"
        />
    </DxChart>
</template>
<script>
import DxChart, {
    DxLoadingIndicator
} from 'devextreme-vue/chart';
export default {
    components: {
        DxChart,
        DxLoadingIndicator
    }
}
</script>React
import React from 'react';
import Chart, {
    LoadingIndicator
} from 'devextreme-react/chart';
class App extends React.Component {
    render() {
        return (
            <Chart ... >
                <LoadingIndicator
                    enabled={true}
                />
            </Chart>
        );
    }
}
export default App;If you need to show or hide the loading indicator at runtime, call the showLoadingIndicator() or hideLoadingIndicator() method.
jQuery
var chart = $("#chartContainer").dxChart("instance");
chart.showLoadingIndicator();
chart.hideLoadingIndicator();Angular
import { ..., ViewChild } from "@angular/core";
import { DxChartModule, DxChartComponent } from "devextreme-angular";
// ...
export class AppComponent {
    @ViewChild(DxChartComponent, { static: false }) chart: DxChartComponent;
    // Prior to Angular 8
    // @ViewChild(DxChartComponent) chart: DxChartComponent;
    showLoadingIndicator () {
        this.chart.instance.showLoadingIndicator();
    };
    hideLoadingIndicator () {
        this.chart.instance.hideLoadingIndicator();
    };
}
@NgModule({
    imports: [
        // ...
        DxChartModule
    ],
    // ...
})Vue
<template> 
    <DxChart
        ref="chart"
        ... >
    </DxChart>
</template>
<script>
import DxChart from 'devextreme-vue/chart';
export default {
    components: {
        DxChart
    },
    methods: {
        showLoadingIndicator () {
            this.$refs.chart.instance.showLoadingIndicator();
        },
        hideLoadingIndicator () {
            this.$refs.chart.instance.hideLoadingIndicator();
        }
    }
}
</script>React
import React from 'react';
import Chart from 'devextreme-react/chart';
class App extends React.Component {
    constructor(props) {
        super(props);
        this.chartRef = React.createRef();
        this.showLoadingIndicator = function() {
            this.chartRef.current.instance.showLoadingIndicator();
        }
        this.hideLoadingIndicator = function() {
            this.chartRef.current.instance.hideLoadingIndicator();
        }
    }
    render() {
        return (
            <Chart ref={this.chartRef} ... >
            </Chart>
        );
    }
}
export default App;See Also
If you have technical questions, please create a support ticket in the DevExpress Support Center.