2
我在嘗試動態填充chart.js中的條形圖時遇到了一些麻煩。我有兩個數組,一個用於標籤,一個用於價格,兩個數組都已經用來自firebase的已排序數據填充。這裏是我的代碼:Chart.js沒有顯示動態填充的數據
var ctx = document.getElementById('brandChart').getContext("2d");
var data = {
labels: [],
datasets: [{
data: [],
backgroundColor: [
"#424242",
]
}]
};
var options = {
layout: {
padding: {
top: 5
}
},
responsive: true,
legend: {
display: true,
position: 'bottom',
// disable legend onclick remove slice
onClick: null
},
animation: {
animateScale: true,
animateRotate: true
},
};
var opt = {
type: "horizontalBar",
data: data,
options: options
};
if (brandChart) brandChart.destroy();
brandChart = new Chart(ctx, opt);
// dynamically populate chart
for(var i = 0; i < labelData.length; i++){
brandChart.config.data.labels.push(labelData[i]);
}
for(var i = 0; i < priceData.length; i++){
brandChart.config.data.datasets[0].data.push(priceData[i]);
}
brandChart.update();
我設法顯示所有他們的柱狀圖,然而,結果是這樣的:
它是一種每個標籤之間的擠壓,如果有太多的類別。此外,只有第一個酒吧的顏色&圖例顯示未定義。任何想法如何解決這些?
感謝先進!
感謝您的答覆!但是圖表中沒有顯示編輯部分的內容。你有什麼想法,爲什麼這樣?有些東西從數據數組中打印出來,只是沒有在圖表上顯示出來, – hyperfkcb
你沒有正確地填充'data'數組。仔細想想 –
我修改了我的代碼來更新#2,但無濟於事:( – hyperfkcb