Home › Forums › Chart Support › How can I plot values from .txt file ? › Reply To: How can I plot values from .txt file ?
Hi again,
the shifting with limited points are working fine thank you ! (i modified source to 3 rows only)
but if i set an interval now ive got an error every interval
it say: cannot read prperty ‘split’ of undefined at processData line 75 (var allLinesArray = allText.split(“\n”);)
i cannopt find my mistake at the moment -.-
<!DOCTYPE html> <head> <meta charset="utf-8"> <!--<meta http-equiv="refresh" content="2">--> <title>Framework</title> <link rel="stylesheet" href="stylegraph.css"> <script type="text/javascript" src="addons/canvasjs/jquery-3.1.0.min.js"></script> <script type="text/javascript" src="addons/canvasjs/canvasjs.min.js"></script> <script type="text/javascript"> window.onload = function() { $.ajax( { type: "GET", url: "share/cool_1.txt", dataType: "text", success: function (data) { processData(data); } } ); var chart = new CanvasJS.Chart("chartContainercool", { backgroundColor: "#e5ecf0", //animationEnabled: true, zoomEnabled:true, zoomType: "x", title: { text: "CCcool Data" }, axisX:{ labelAngle: 0, labelWrap:true, labelAutoFit: false, labelFontSize: 15, labelMaxWidth: 200, labelAngle: -30, labelFontColor: "black" }, data: [ { type: "line", indexLabelPlacement: "outside", name: "X-Axis", indexLabelFontWeight: "bold", indexLabelFontColor: "black", legendText: "X-Axis", showInLegend: true, color: "orange", dataPoints: [] }, { type: "line", indexLabelPlacement: "outside", name: "Y-Axis", indexLabelFontWeight: "bold", indexLabelFontColor: "black", legendText: "Y-Axis", showInLegend: true, color: "green", dataPoints: [] }, { type: "line", indexLabelPlacement: "outside", name: "Z-Axis", indexLabelFontWeight: "bold", indexLabelFontColor: "black", legendText: "Z-Axis", showInLegend: true, color: "blue", dataPoints: [] }, ] }); function processData(allText) { var allLinesArray = allText.split("\n"); if( allLinesArray.length > 0 ) { for (var i = 0; i <= allLinesArray.length - 1; i++) if (!(allLinesArray[i].indexOf('#') !== -1)) { var rowData = allLinesArray[i].split(" "); if (rowData && rowData.length > 1) { if (i != 0) { chart.options.data[0].dataPoints.push({x: parseInt(rowData[0]), y: parseInt(rowData[1])}); chart.options.data[1].dataPoints.push({x: parseInt(rowData[0]), y: parseInt(rowData[2])}); chart.options.data[2].dataPoints.push({x: parseInt(rowData[0]), y: parseInt(rowData[3])}); } } } for(var i = 0; i < chart.options.data.length; i++) { while(chart.options.data[i].dataPoints.length > 2000) chart.options.data[i].dataPoints.shift(); } chart.render(); } setInterval(function(){ processData(); }, 1000); } } </script> </head> <body bgcolor="#564B47" > <div id="wrapper"> <div id="header"> <font color="#039A9A"><strong>S</strong> </font> Frame </div> <div id="chartContainercool" style="height: 100%; width: 100%; "></div> <div id="footer"> <font></font> </div> </div> </body> </html>