Real-Time Chart

29 Aug 20172 minutes to read

Chart can be updated dynamically with the real time data. Whenever you add a point or remove a point from the dataSource, you can call the redraw method to request the chart to redraw its content.

NOTE

You can get the chart instance using instance method.

  • HTML
  • <ej:Chart ID="chartContainer" runat="server"> 
       <%--Rendering empty Chart without data--%>
        <Series>
            <ej:Series>
                <Points></Points>
            </ej:Series>
        </Series>
    </ej:Chart>
  • JS
  • //Using set interval to update chart dynamically
        window.setInterval(updateChart, 200);
    
        //Function that updates chart dynamically
        function updateChart(){
    
            //Creating chart instance
            var chart =  $("#chartContainer").ejChart("instance");      
            
            if (chart.model.series[0].points.length > 10)
                   chart.model.series[0].points.splice(0, 1);
            
            var point = chart.model.series[0].points;
            var xValue = point.length > 0 ? point[point.length - 1].x + 1 : 1;
            point[point.length] = { x:  xValue, y: getRandomNumber( 1000 ) }
                    
            //Update Chart dynamically using redraw option
            //chart.redraw() can also be used here instead of redraw option
            $("#chartContainer").ejChart("redraw");      
           }

    Click here to view the online demo sample for real-time Chart.