【发布时间】:2021-05-06 07:30:56
【问题描述】:
我需要将两个数组组合成一个条形图,而无需手动操作数组。 数组示例:
result1 = {a:2,b:5,c:52}
result2 = {a:4,b:3,d:47}
//WHERE (to elaborate):
result1.labels = {a, b, c};
result1.data = {2, 5, 52};
result2.labels = {a, b, d};
result2.data = {4, 3, 47};
var myChart = new Chart(ctx, {
type: 'bar',
data: {
datasets: [{
label: 'Dataset 1',
data: result1.data,
order: 1,
labels: result1.labels
}, {
label: 'Dataset 2',
data: result2.data,
order: 2,
labels: result2.labels
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
现在我只会得到 3 条条堆栈,它将合并 result1 和 result2 的 3. 条目,但我需要它来制作 4 条条“a、b、c、d”。 我知道我可以手动填写 result1 并添加“d:0”,然后在 result2 添加“c:0”,但是由于它从不断更改返回数组大小的数据库中获取数据,这不是一个好的解决方案。
谢谢
【问题讨论】:
-
什么是
result1.data和result1.labels,因为我没有看到对象上的data和labels属性 -
你能发布你预期的 result1 和 result2 的输出吗?
-
labels: "a, b, c, d" data: results1 和 2 数组中的数字我只是想简化一下
-
查看更新的代码片段
标签: javascript charts jscharts