const config = { type: 'line', data: data, options: { scales: { x: { type: 'realtime', realtime: { duration: 20000, refresh: 1000, delay: 2000, onRefresh: onRefresh }, reverse: true }, y: { title: { display: true, text: 'Value' } } }, interaction: { intersect: false } } };
const data = { datasets: [ { label: 'Dataset 1 (Linear Interpolation)', backgroundColor: Utils.transparentize(Utils.CHART_COLORS.red, 0.5), borderColor: Utils.CHART_COLORS.red, borderDash: [8, 4], data: [] }, { label: 'Dataset 2 (Cubic Interpolation)', backgroundColor: Utils.transparentize(Utils.CHART_COLORS.blue, 0.5), borderColor: Utils.CHART_COLORS.blue, cubicInterpolationMode: 'monotone', data: [] } ] }; const onRefresh = chart => { const now = Date.now(); chart.data.datasets.forEach(dataset => { dataset.data.push({ x: now, y: Utils.rand(-100, 100) }); }); };
const actions = [ { name: 'Randomize', handler(chart) { chart.data.datasets.forEach(dataset => { dataset.data.forEach(dataObj => { dataObj.y = Utils.rand(-100, 100); }); }); chart.update(); } }, { name: 'Add Dataset', handler(chart) { const datasets = chart.data.datasets; const dsColor = Utils.namedColor(datasets.length); const newDataset = { label: 'Dataset ' + (datasets.length + 1), backgroundColor: Utils.transparentize(dsColor, 0.5), borderColor: dsColor, data: [] }; datasets.push(newDataset); chart.update(); } }, { name: 'Add Data', handler(chart) { onRefresh(chart); chart.update(); } }, { name: 'Remove Dataset', handler(chart) { chart.data.datasets.pop(); chart.update(); } }, { name: 'Remove Data', handler(chart) { chart.data.datasets.forEach(dataset => { dataset.data.shift(); }); chart.update(); } } ];
← Interactions Push Data Feed →
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4