【发布时间】:2026-01-21 13:45:01
【问题描述】:
我正在尝试使用Chart.js 条形图来显示一组数据。 我的数据是基于每周的,所以根据我的方法,我发送年份和周数,然后将数据分 3 列取回;产品、面积和数量。
我想要的是水平的产品,并且在每个产品中,我希望每个区域都有不同的条形,并且垂直偏离数量。 (奖励:如果某个区域在该产品中没有任何内容,则不应在该特定产品中显示)
问题在于每周的产品数量和区域数量可能会有所不同。而且我似乎找不到一个好方法来循环遍历数据并按照 chart.js 想要的方式创建数据集。
还尝试使用 Underscore.js 对其进行分组,但每个区域并不总是有特定产品的数量这一事实似乎导致了一些问题。
所以我猜你必须遍历数据并将该数据映射到每个区域的另一个预定义数组,以便它可以以某种方式匹配这个结构??
也对其他图表插件开放,但真的很喜欢 Chart.js 动画数据的方式。如果我得到这个工作,我可能会在你改变周时找出一个更新方法。
要获得标签,我可以 f.ex 这样做:
$.ajax({
....
success: function (d) {
var a = _.groupBy(d.data, function (d) { return d.Product });
var labels = [];
$.each(a, function (i, value) {
labels.push(i);
});
}
});
【问题讨论】:
标签: javascript jquery underscore.js bar-chart chart.js