0
我想在jsreport中使用自定義數據製作一些圖表,並使用Chart.js,問題是我不知道如何使用自定義數據來填充圖表。到目前爲止,我創建了一個非常大的JSON與我的數據和函數來生成圖表和放置在一個畫布內,但我不能用手柄調用我的HTML內的函數,因爲它說文檔沒有定義。那麼,我如何使用我的數據創建圖表並將其顯示在畫布內?如何在jsreport的圖表中使用自定義數據?
P.S .:我可以很容易地顯示靜態數據的圖表,但我真的想用我創建的json來做這件事。
我的函數來創建我的圖表:
function graficoEstiloAdaptado(exame){
var ctx = document.getElementById('graficoEsquerdo').getContext('2d');
var total = 280;
var incentivador = 0;
var idealizador = 0;
var detalhista = 0;
var sociavel = 0;
for(var i=0;i<exame.respostas.length;i++){
for(var j=0;j<exame.respostas[i].alternativas.length;j++){
switch(exame.respostas[i].alternativas[j].categoria){
case 'Incentivador':
incentivador += 4-j;
break;
case 'Idealizador':
idealizador += 4-j;
break;
case 'Detalhista':
detalhista += 4-j;
break;
case 'Sociável':
sociavel += 4-j;
break;
}
}
}
var porcentagens = {
incentivador: (incentivador/total).toFixed(1),
idealizador: (idealizador/total).toFixed(1),
detalhista: (detalhista/total).toFixed(1),
sociavel: (sociavel/total).toFixed(1)
};
var chartEstiloAdaptado = new Chart(ctx, {
type: 'bar',
data: {
labels: [porcentagens.incentivador + "%", porcentagens.idealizador + "%", porcentagens.detalhista + "%", porcentagens.sociavel + "%"],
datasets: [{
label: "Gráfico I",
data: [
porcentagens.incentivador,
porcentagens.idealizador,
porcentagens.detalhista,
porcentagens.sociavel
]
}]
},
options: {
animation: {
onComplete: function() {
window.JSREPORT_READY_TO_START = true;
}
}
}
});
}
而且我不希望使用的API來獲取數據還沒有,我只是想構造的報告我喜歡的方式,之後使用API來獲取數據。
非常感謝! –