Jsp 谷歌折线图x轴在过渡时收缩
我在我的页面上使用谷歌折线图。每5秒刷新一次。但奇怪的是,每次刷新都会导致图表中的线条收缩,尽管图表大小保持不变 我的剧本-Jsp 谷歌折线图x轴在过渡时收缩,jsp,jquery,google-visualization,Jsp,Jquery,Google Visualization,我在我的页面上使用谷歌折线图。每5秒刷新一次。但奇怪的是,每次刷新都会导致图表中的线条收缩,尽管图表大小保持不变 我的剧本- google.load('visualization', '1', {packages:['corechart']}); google.setOnLoadCallback(drawLine); // call drawChart when google.load() completes function drawLine() { var g
google.load('visualization', '1', {packages:['corechart']});
google.setOnLoadCallback(drawLine); // call drawChart when google.load() completes
function drawLine() {
var gaugeData = new google.visualization.DataTable();
gaugeData.addColumn('string', 'Time'); // X-Axis
gaugeData.addColumn('number', 'Memory'); // Y-Axis
gaugeData.addColumn('number', 'CPU'); // Y-Axis
var gaugeOptions = {title: 'System Details'}; // Tile of chart
var gauge;
var tempArray; // Store json object value from server
var tempArray2; // Modify json object value from server
gauge = new google.visualization.LineChart(document.getElementById('line_chart_div'));
setInterval(function(){$.ajax({
url: "lineChart.jsp", // Page from which json(new chart values) are fetched
cache: false,
data: {search: "test"},
dataType: "json",
success: function(json2) {
tempArray = (json2.Stats).toString().split(","); // json2.Stats="1:45|34|56,1:55|67|43,......."
var colCount=0;
var i=0; //rowCount
gaugeData.addRows(tempArray.length); // length of array = no. of rows to be inserted(this is always constant)
for (i=0; i < tempArray.length; i++){
tempArray2 = tempArray[i].split("|"); // tempArray2={"1:45","34","56"}..
gaugeData.setValue(i,colCount++,tempArray2[0]); // column1
gaugeData.setValue(i,colCount++,parseInt(tempArray2[1], 10)); // column2
gaugeData.setValue(i,colCount++,parseInt(tempArray2[2], 10)); // column3
colCount=0;
}
gauge.draw(gaugeData, gaugeOptions);
}
});}, 5000);
}
google.load('visualization','1',{packages:['corechart']});
google.setOnLoadCallback(drawLine);//在google.load()完成时调用drawChart
函数drawLine(){
var gaugeData=new google.visualization.DataTable();
gaugeData.addColumn('string','Time');//X轴
gaugeData.addColumn('number','Memory');//Y轴
gaugeData.addColumn('number','CPU');//Y轴
var gaugeOptions={title:'System Details'};//图表的平铺
var计;
var tempArray;//存储来自服务器的json对象值
var tempArray2;//从服务器修改json对象值
gauge=新的google.visualization.LineChart(document.getElementById('line_chart_div'));
setInterval(函数(){$.ajax({
url:“lineChart.jsp”,//获取json(新图表值)的页面
cache:false,
数据:{搜索:“测试”},
数据类型:“json”,
成功:函数(json2){
tempArray=(json2.Stats).toString().split(“,”;//json2.Stats=“1:45 | 34 | 56,1:55 | 67 | 43,…”
var colCount=0;
var i=0;//行计数
gaugeData.addRows(tempArray.length);//数组的长度=要插入的行数(这始终是常量)
对于(i=0;i
我该怎么阻止这一切| 找到了解决办法。
我一直在向DataTable添加行,而没有删除旧的行
现在,我在更新图表中的新值之前执行此操作-
gaugeData.removeRows(0,tempArray.length); //tempArray.length=no. of old rows