2016-05-31 60 views
1

您好我想加載與C3圖 這裏日期時間範圍動態數據是我的代碼:無法加載C3圖形數據與阿賈克斯

$.ajax({ 
    [...] 
    success: function(data) { 
     chart.load({ 
      columns: data, 
      unload: chart.columns, 
     }); 
    } 
}); 

Ajax響應是:

[['Friday', 1],['Friday', 3],['Sunday', 1],['Saturday', 2],['Friday', 3],['Friday', 3],['Friday', 5],['Friday', 3],['Monday', 1],['Friday', 1],['Tuesday', 1]] 

成功之後我的圖上沒有看到任何東西。即使我已評論「卸載」 但仍然相同。如果我靜態放置,該功能工作正常。請幫我

+0

它現在工作嗎? –

回答

0

你用錯了。它不是輸出chart函數,而是輸出c3函數。下面將生成一個圖表(這看起來不太好,但我不知道你在期待什麼)。

你也錯過了定義一個輸出格,因此我加了#chart

var data = [['Friday', 1],['Friday', 3],['Sunday', 1],['Saturday', 2],['Friday', 3],['Friday', 3],['Friday', 5],['Friday', 3],['Monday', 1],['Friday', 1],['Tuesday', 1]]; 
 

 
var data2 = [['Friday', 3],['Friday', 10],['Sunday', 50],['Saturday', 20],['Friday', 15],['Friday', 10],['Friday', 6],['Friday', 8],['Monday', 5],['Friday', 20],['Tuesday', 13]]; 
 

 
var chart = c3.generate({ 
 
    bindto: '#chart', 
 
    data: { 
 
     columns: data 
 
    } 
 
}); 
 

 
setTimeout(function() { 
 
    chart.load({ 
 
     columns: data2 
 
    }); 
 
}, 2000)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/c3/0.4.11/c3.js"></script> 
 

 
<div id="chart"></div>

+0

我知道它的作品,但你有嘗試使用AJAX更新 – codeBloger

+0

我添加了延遲更新以顯示如何更新它。這夠了嗎? –

0

你嘗試圍繞列括號:數據在chart.load函數的參數?這是一段代碼,在我的應用程序中工作

$(document).on("click", "#btnPDquant", function(event) { 
$.ajax({ 
url: "PDQuantCalc", 
type: "post", 
data: $('#formPDquant').serialize(), 
success: function(response){ 
    var newdat = JSON.parse(response); 
    chart.x(newdat.year); 
     chart.load({ 
      columns: [ newdat.PDquant ] 
    }); 
} 
event.preventDefault(); // Important! Prevents submitting the form. 
});