gpt4 book ai didi

javascript - 使用 dc.js 从 barChart 中删除空组

转载 作者:行者123 更新时间:2023-11-28 08:06:17 26 4
gpt4 key购买 nike

我在从条形图中删除空组时遇到一些问题。

我的目的是从 xAxis 中删除空组(以完全隐藏它们)并让 barChart 相应地缩放内容。

阅读 dc.js 常见问题解答后,我发现了以下代码片段:

var group = {
all:function () {
return _group.all().filter(function(d) {
return d.value != 0;
})
}
};

我添加了这样的代码:

BarChart.on("preRedraw", function(chart) {
group = chart.group();
group2 = {
all: function()
{ return group.all().filter(function(d) { return (d.value.wins+d.value.losses) > 0; } ) }
};
chart.group(group2);
})

在我使用的其他图表上进行 1-2 个过滤器后,这样做会导致“递归过多”错误。

group2 提供了正确的结果,但现有的条形似乎没有受到它的影响,或者以奇怪的方式导致条形有间隙或其他缺陷。

我尝试在函数末尾添加但没有成功。

BarChart.x(d3.scale.ordinal());
BarChart.xUnits(dc.units.ordinal);
BarChart.rescale();

我什至尝试重新渲染图表。

任何有关此事的帮助将不胜感激。

最佳答案

您只想在初始化图表时执行此操作一次。这种假组是动态计算的,不需要在每个绘制周期重置。

换句话说,常见问题解答中提到的源 _group 旨在成为您在初始化时传递给图表的组,一旦您生成了假组,请将其传递给图表相反。

关于javascript - 使用 dc.js 从 barChart 中删除空组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24753383/

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