У меня есть Chart.js со значениями из массива Javascript, который выглядит точно так же, что:Chartjs этикетки с Javascript массиву
var obj = JSON.parse('{"0":"8.4113","2":"9.5231","3":"9.0655","4":"7.8400"}');
И здесь я даю «Obj» массив к chartjs, который работает отлично и заливок из баров:
var barChartData = {
labels : obj1,
datasets : [
{
fillColor: "rgba(151,187,205,0.5)",
strokeColor: "rgba(151,187,205,0.8)",
highlightFill: "rgba(151,187,205,0.75)",
highlightStroke: "rgba(151,187,205,1)",
data : obj
}
]
}
window.onload = function(){
var ctx = document.getElementById("canvas").getContext("2d");
window.myBar = new Chart(ctx).Bar(barChartData, {
responsive : true
});
}
</script>
Но как вы можете видеть, что есть второй массив называется «obj1», который хранит имена меток. Это выглядит так:
var obj1 = JSON.parse('{"0":"name1","2":"name2","3":"name3","4":"name4"}');
Этот второй массив не заполняет метки, подобные другому массиву, метки по-прежнему пусты. Я понятия не имею, почему это не работает, как данные: «».
Я мог бы сказать, что массивы динамические, поэтому я не хочу добавлять данные вручную. Obj и Obj1 из базы данных ... – julien
Я думаю, мне нужно получить obj1 без ключа только имена в массиве, как вы сказали: '['name1', 'name2', 'name3', 'name4']' но не понял, как это сделать. – julien
Насколько я понимаю, используйте код, который я добавил в моем ответе ниже, чтобы преобразовать вашу модель данных в массив. – jeremija