gpt4 book ai didi

javascript - 带有隐藏条形的 C3js 堆叠条形图

转载 作者:行者123 更新时间:2023-12-03 05:12:09 24 4
gpt4 key购买 nike

场景:我需要显示有关付款详细信息的条形图,即客户使用卡、支票或现金为产品支付的金额。并且还需要在堆积条形图中显示总值。

var chart = c3.generate({
data: {
columns: [
['Cash', 30, 200, 100, 400, 150, 250],
['Card', 130, 100, 140, 200, 150, 50],
['Total', 160,300,240,600,300,300]
],
groups:[['Cash','Card']],
type: 'bar'
}
});

输出:

enter image description here

我需要显示总计值,但不是条形图和图例。怎么能做到这一点呢?任何意见将是有益的。谢谢。

最佳答案

您不需要总数据集,您可以更改工具提示内容以动态计算它(调整此处答案中找到的技术 -> https://stackoverflow.com/a/36789099/368214 )

var chart = c3.generate({
data: {
columns: [
['Cash', 30, 200, 100, 400, 150, 250],
['Card', 130, 100, 140, 200, 150, 50],
],
groups:[['Cash','Card']],
type: 'bar'
},
tooltip : {
contents: function (d, defaultTitleFormat, defaultValueFormat, color) {
var total = d.reduce (function(subTotal,b) { return subTotal + b.value; }, 0);
d.push ({value: total, id: "Total", name: "Total", x:d[0].x , index:d[0].index});
return this.getTooltipContent(d, defaultTitleFormat, defaultValueFormat, color);
}
}
});

使用 .reduce 计算该点的所有其他值的总和来计算总值。然后使用该值为工具提示创建一个名为“Total”的新数据点,并将其传递给默认渲染器进行绘制 (this.getTooltipContent)

http://jsfiddle.net/vz1rwvwn/

关于javascript - 带有隐藏条形的 C3js 堆叠条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41760625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com