2015-11-03 39 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嵌入新的圖表。