J'essaie de dessiner un graphique à barres avec chart.js qui utilise plusieurs étiquettes pour que je puisse les manipuler. J'ai réussi à le faire avec un graphique linéaire et j'ai essayé d'étendre ce que j'ai fait là-bas sans chance. Je reçois cette erreur. qu'est-ce qui pourrait en être la cause?
"TypeError non intercepté: Object.defineProperty appelé sur un non-objet".
Le problème se situe quelque part dans les données: {} car lorsque j'avais des données sous la forme d'un simple tableau à 2 index, cela fonctionnait bien.
edit: lors de la navigation dans l'ensemble de données = null;
var com_passed = rows[rows.length-2]["# Common Passed"];
var com_failed = rows[rows.length-2]["# Common Failed"];
var ctx = document.getElementById("common_chart");
ctx.height = 50;
var historicalChart = new Chart(ctx, {
type: 'bar',
data: {
labels: ["Passed", "Failed"],
datasets: [
{
data: com_passed,
label: "Passed",
fillColor: "red"
},
{
data: com_failed,
label: "Failed",
fillColor: "green"
}
]
},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true,
responsive: false,
maintainAspectRatio: true
}
}]
}
}
});
pour ceux qui ont un problème similaire. J'avais besoin de faire les données com_passed et com_failed comme un tableau au lieu d'un entier comme ça.
var com_passed = rows[rows.length-2]["# Common Passed"];
var com_failed = rows[rows.length-2]["# Common Failed"];
var ctx = document.getElementById("common_chart");
ctx.height = 50;
var historicalChart = new Chart(ctx, {
type: 'bar',
data: {
labels: ["Passed", "Failed"],
datasets: [
{
data: [com_passed],
label: "Passed",
fillColor: "red"
},
{
data: [com_failed],
label: "Failed",
fillColor: "green"
}
]
},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true,
responsive: false,
maintainAspectRatio: true
}
}]
}
}
});