2015-11-03 37 views
1

Im有一个问题,当我生成chart.js一个图表,但是当我从同一页面的菜单生成另一个图表,它会生成图表,但是当我移动图表时移动它会更改为前一个。在后台ChartJS

UPDATE

经过一番研究chart.js之文档中发现,清除图表数据的方法,我已经应用到控制器获得新数据之前,遗憾的是继续当鼠标移到拿到之前图表背景图表制作了包含值的数组的控制台日志,并且使用最近请求的数据更新。从控制器

代码

$scope.getChart = function (report) { 
$scope.modalLabels = []; 
$scope.data = {values: ([])}; //Array that contains the data recieved from the server 
if($('#chartBar')!=null){ 
     $('#chartBar').removeData(); 
    } 
/*Function to request data to server*/ 
//If data recieved 
var avgCapacity = []; 
    for (var i = 0, length = data.length; i < length; i++) { 
     avgCapacity.push(data[i].Volume); 
     $scope.modalLabels.push(data[i].Day + "/" + data[i].Month); 
      } 
     $scope.data.values = ([avgCapacity]); 

Second chart originated

Chart when mouse over

这背后的HTML:

<div ng-hide="data==0"> 
    <h4 id="chartTitle"><b>{{Title}}</b></h4> 
<canvas id="ChartBar" class="chart chart-bar" chart-data="data" chart-options="options" 
     chart-labels="modalLabels" chart-legend="true" chart-series="series"> 
</canvas> 
</div> 

回答

0

您需要通过之前调用.destroy()摧毁以前的图表实例你g嵌入新的图表。