16
回答
数据量大时(约千个左右)会很卡。

@Kener-林峰 你好,想跟你请教个问题:新手上路,使用折线图,X轴从数据库取值,大约有2000个点,对应Y轴也有这么多数据量,会导致图载入很慢,IE显示脚 本停止。直接在X轴配置上添加的。
需求:工业用图表,要求每三分钟取显示一次数据。时间区间为一天。求帮助。

2013-12-21补充内容:

我是先将数据库中的所要的数据取出来,然后拼接成X,Y所需要的字串格式,然后再从JS中直接引用这两个变量,输出的。

帖出部分代码,请高手帮忙。

数据库部份

while(rs1.next()){
			BigDecimal temp=rs1.getBigDecimal(tempstr[j]);			 
			BigDecimal df=temp.setScale(1, BigDecimal.ROUND_HALF_UP);			
		   datetemp = rs1.getTime(1); 
		String outtemp=df.toString();  
		   if (timestring.equals(" ")) {
                    timestring="['"+datetemp+"'";
		   }else{
		       timestring=timestring+",'"+datetemp+"'";
		   }

	    if (datestring.equals(" ")) {
                    datestring="['"+outtemp+"'";
		   }else{
		       datestring=datestring+",'"+outtemp+"'";
		   }
		 }
}
timestring=timestring+"]";
datestring=datestring+"]";



JS部份

xAxis : [
        {
            type : 'category',
            boundaryGap : false,
            data :<%=timestring%>
        }
    ],
    yAxis : [
        {
            type : 'value',
            splitArea : {show : true}
        }
    ],
    series : [
        {
            name:'33',
            type:'line',
            stack: '总量',
            data:<%=datestring%> 

                
           
        }
       
    ]



举报
共有16个答案 最后回答: 4年前

option.animation : false//动画

大数据时把这个关了吧,这样就不会全带小点了不关动画也可以

option.calculable:false //拖拽重计算

动画肯定是耗性能了,看出现的shape数量,数量多动画肯定吃力

每次只是增量取数,数据同步量不大。。

再卡也能跑出来,不会搞到IE扑街的。。换个浏览器验证一下逻辑先~!

引用来自“嫂来哇”的答案

弄清楚 瓶颈到底在浏览器还是数据库上
直接用IE8打开,长时间数据不来,后来显示为脚本是否停止的提示

引用来自“ErosVshare”的答案

用了js递归么?或者处理量太大。
数据量有点大的,我看了下,大约有1200条左右,一个时间点对应一个数据。

引用来自“Kener-林峰”的答案

关掉动画!animation:false
],
    series : [
        {
            name:'33',
            type:'line',
            stack: '总量',
            data:<%=datestring%> 

                
           
        }

       
    ],
		
		animation:false
};

是加在这里吗?

加入后反而图都不显示了,感觉加错地方了.

发现很多人在提动画很卡,那这个问题能解决不?



顶部