JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/apexcharts/3.35.3/apexcharts.min.js" integrity="sha512-yhdujT21BI/kqk9gcupTh4jMwqLhb+gc6Ytgs4cL0BJjXW+Jo9QyllqLbuluI0cBHqV4XsR7US3lemEGjogQ0w==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/apexcharts/3.35.3/apexcharts.min.css" integrity="sha512-72LrFm5Wau6YFp7GGd7+qQJYkzRKj5UMQZ4aFuEo3WcRzO0xyAkVjK3NEw8wXjEsEG/skqvXKR5+VgOuzuqPtA==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" integrity="sha512-894YE6QWD5I59HgZOGReFYm4dnWc1Qt5NtvYSaNcOP+u1T9qYdvdihz0PPSiiqn/+/3e7Jo4EaG7TubfWGUrMQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<div id="chart"></div>
JavaScript
var increment = 0;
var mData = function(){
var data = [];
var prop = [];
prop.push(increment);
prop.push(Math.floor(Math.random() * (100 - 1 + 1) + 1))
increment++;
data.push(prop);
return data;
};
var options = {
chart: {
id: 'realtime',
height: 350,
type: 'line',
animations: {
enabled: true,
easing: 'easeinout',
speed: 1000,
dynamicAnimation: {
enabled: true,
speed: 1000
}
}
},
dataLabels: {
enabled: false
},
stroke:{
curve: 'smooth'
},
series: [{
name: "Sales",
data: mData()
}],
title: {
text: 'Ajax Example',
},
noData: {
text: 'Loading...'
}
}
var chart = new ApexCharts(
document.querySelector("#chart"),
options
);
chart.render();
chart.appendData([{
name: "Sales",
data: mData()
}]);
setInterval(function(){
chart.appendData([{
name: "Sales",
data: mData()
}]);
console.log(`Updated in ${increment} minute`);
}, 1000);