charts--plugin-streaming manual update

by Akihiko Kusanagi

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/chartjs-plugin-streaming.min.js"></script>
<canvas id="chart"></canvas>

JavaScript

var ctx = document.getElementById('chart').getContext('2d');
var chart = new Chart(ctx, {
  type: 'line',
  data: {
  	datasets: [{
    	data: []
    }]
  },
  options: {
    scales: {
    	xAxes: [{
        type: 'realtime',
        display: false
    	}]
    },
    plugins: {
      streaming: {
/*        onRefresh: function(chart) {
          chart.data.datasets.forEach(function(dataset) {
            dataset.data.push({
              x: Date.now(),
              y: Math.random()*3
            });
          });
        }*/
      }
    }
  }
});

setInterval(function() {
  chart.config.data.datasets.forEach(function(dataset, i) {
    dataset.data.push({
      x: Date.now(),
      y: Math.random()
    });
  });
  chart.update(0);
}, 1000);