你好,我有一個JavaScript生成CSV文件中的一個highchart:Highchart Java腳本越來越充滿
<script>
function Showgraph(){
$.ajax({
url: 'Merge_files.php',
// success: function(data) {
// $('.result').html(data);
// alert('Load was performed.');
// }
});
var options = {
chart: {
renderTo: 'container',
defaultSeriesType: 'line'
},
title: {
text: 'Measurement data'
},
xAxis: {
//categories: [],
title: {
text: 'Measurement number'
},
labels: {
enable: false,
y:20, rotation: -45, allign: 'right'
}
},
yAxis: {
title: {
text: 'Retro Reflection'
}
},
series: []
};
sleep(100);
$.get('Sensor_datafull.txt', function(data) {
// Split the lines
var lines = data.split('\n');
$.each(lines, function(lineNo, line) {
var items = line.split(',');
var series = {
data: []
};
$.each(items, function(itemNo, item) {
if (itemNo == 0) {
series.name = item;
} else {
series.data.push(parseFloat(item));
}
});
options.series.push(series);
});
// Create the chart
var chart = new Highcharts.Chart(options);
})
}
<!--Sleep function to pause the Showgraph, so the fiels in Merge_files will be generated before chart -->
function sleep(milliseconds) {
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > milliseconds){
break;
}
}
}
</script>
腳本「合併」 7個文件合併成一個大的,並創建圖表。這些文件每秒都會被新的測量數據填滿。該合併文件看起來像:
0.20,-517.2,-314.9,227.2,... 0.33,-228.5,-79.0,130.7,... 0.50,-286.6,-140.6,84.5, ... 0.70,-96.6,-62.6,23.0,... 1.00,-18.6,-12.4,11.6,... 1.50,-62.7,-35.9,-11.0 .... 2.00,-37.7,-24.0,-1.5,...
問題是,當文件達到一定的大小時,不能創建高圖,並凍結。然後,我想知道是否有可能使得高圖只能像csv中的第一個數據(是類別)和每行的500個最後數據。文件或東西?任何其他想法來解決這個問題也是受歡迎的!
預先感謝您的幫助!
您可以使用整個CSV文件構建一個'series',然後使用javascript創建該''series'的一個子集,並設置所需的多個值(例如第一個和最後一個500)。 –