It is pretty hard to make controls for chartjs.
But plotly has it by default.
[{"id":"5e0d9a67.116c84","type":"ui_template","z":"e8af3254.77f7e","group":"","name":"Allow Plotly ","order":17,"width":0,"height":0,"format":"<script src=\"https://cdn.plot.ly/plotly-latest.min.js\"></script>\n","storeOutMessages":true,"fwdInMessages":true,"resendOnRefresh":true,"templateScope":"global","x":650,"y":200,"wires":[[]]},{"id":"66e905d7.65d2bc","type":"inject","z":"e8af3254.77f7e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"1","crontab":"","once":true,"onceDelay":"1","topic":"","payload":"","payloadType":"str","x":350,"y":240,"wires":[["d2dfc384.0bb3b"]]},{"id":"2e5762f6.c687fe","type":"ui_template","z":"e8af3254.77f7e","group":"6aa20356.9b59bc","name":"Chart","order":1,"width":16,"height":"9","format":"<div id=\"plotlychart\" style=\"width:100%\"></div>\n<script>\n\n// Initialize chart\nvar time = new Date();\n\nvar data = [{\n x: [time],\n y: [0],\n mode: 'lines',\n line: {color: '#80CAF6'}\n}]\nvar layout = {\n title:'Plotly Chart',\n width: 838,\n height: 400,\n paper_bgcolor:\"#EEEDED\",\n plot_bgcolor:\"#EEEDED\"\n \n};\nPlotly.newPlot('plotlychart', data, layout);\n\n// Update data & layout\n(function(scope) {\n scope.$watch('msg', function(msg) {\n if (msg) {\n \n var time = new Date();\n\n var update = {\n x: [[time]],\n y: [[msg.payload]]\n }\n \n var olderTime = time.setMinutes(time.getMinutes() - 1);\n var futureTime = time.setMinutes(time.getMinutes() + 1);\n \n var minuteView = {\n xaxis: {\n type: 'date',\n range: [olderTime,futureTime]\n }\n };\n \n Plotly.relayout('plotlychart', minuteView);\n Plotly.extendTraces('plotlychart', update, [0])\n }\n });\n})(scope);\n</script>","storeOutMessages":true,"fwdInMessages":true,"resendOnRefresh":true,"templateScope":"local","x":640,"y":240,"wires":[[]]},{"id":"d2dfc384.0bb3b","type":"random","z":"e8af3254.77f7e","name":"","low":1,"high":10,"inte":"true","property":"payload","x":500,"y":240,"wires":[["2e5762f6.c687fe"]]},{"id":"6aa20356.9b59bc","type":"ui_group","name":"chart","tab":"d5ad8b85.f5ba18","order":1,"disp":true,"width":"16","collapse":false},{"id":"d5ad8b85.f5ba18","type":"ui_tab","name":"Plotly","icon":"dashboard","disabled":false,"hidden":false}]