ChartJSを使用して静的データセットからビジュアライゼーションを作成する際に問題はありませんが、AJAX呼び出しで取得したデータを使用すると、エラーは発生しておらず、私のデータも同じように構成されています。ここでAJAX呼び出しを使用してデータを取得するChartJSが可視化をレンダリングしない
は私のjavascriptです:
var ctx = $('#myChart');
function drawDonut(){
$.ajax({
method: "GET",
url: "url",
contentType: "application/json",
success: function(data){
var myDoughnutChart = new Chart (ctx, {
type: 'doughnut',
data: data,
animation:{
animateScale:true
}
});
}
});
}
$(document).ready(function() {
drawDonut();
});
はここでAJAXデータが構築される方法は次のとおりです。
var data = {
labels: ['red', 'blue', 'green', 'orange', 'yellow'],
datasets: {
data: [12, 15, 17, 19, 202],
}
}
示すように、私は 'drawDonut' 関数の内側と外側の両方のvar CTXを含むしようとしました。私は変数として 'drawDonut'を保存し、それを別々に呼びました。どちらもうまくいかなかった。何かご意見は?
EDIT:
ChartJSからのiframeだけではない、実際のチャートDOMに追加されていることを言及するのを忘れました。
はあなたのAJAX呼び出しがあることを確認しています同期? – tektiv
私はそうではありませんが、$(document).readyとクリックイベントのポストページロードの両方で呼び出すことで、それが問題かどうかを確認しました。 – DGaffneyDC