0

我正在使用 RGraph 绘制带有数据库数据的折线图。我可以在网页加载时使用单个请求来完成它,但是我无法更新图表,因为新线与现有线重叠。有没有办法清除画布并用新值再次绘制它? . 这是第一个请求的代码:

   function drawLine(){

 var masterArray=new Array;

 $.get('SearchDB',{action:'timed'},function(responseText){
     var array= responseText.split(';');

          for (var i=0; i<array.length; i++){

                var intermediate = array[i].split(',');                 
                var map= new Object();

                map["Id"]= intermediate[0];;
                map["LevelValue"]=intermediate[1];
                map["InitialDate"]=intermediate[2];

                masterArray.push(map);
          };

                      var yvalues= new Array();
              var xvalues=new Array();
              var variable;

              for(var i=0; i<8;i++){    

                yvalues[i]=parseInt(masterArray[7-i]["LevelValue"]);

                variable=   masterArray[7-i]["InitialDate"].split(' ');

                xvalues[i]=variable[1];
               } 




                Line = new RGraph.Line('cvs', yvalues);
                Line.Set('chart.hmargin', 10);
                Line.Set('chart.tickmarks', 'endcircle');
                Line.Set('chart.labels', xvalues);
                Line.Draw();

                RGraph.Register(Line);

 });  


}
4

1 回答 1

1

你不需要这个:

RGraph.Register(Line);

在创建对象之前,您可以重置画布:

var canvas = document.getElementById('cvs');
RGraph.Reset(canvas);
于 2013-10-07T08:03:03.193 回答