【问题标题】:How does one hide a series programmatically on a dc.js series chart?如何在 dc.js 系列图表上以编程方式隐藏系列?
【发布时间】:2014-11-12 22:23:47
【问题描述】:

我有一个 dc 系列图表,有时系列之间的差异很大,导致较小的值在某些情况下几乎无法使用。我玩过过滤虚拟维度,但我不知道如何只过滤 seriesAccessor。 dimension.filterExact(['Total Sessions',oneDay]); 可以显示一天(这是 keyAccessor),但我不知道如何简单地隐藏(或显示)一个(或一些)系列。

类似数据:(真实数据是 JSON,但你懂的)

'type','date','value'
'Total Sessions',1414800000000,200
'Total Sessions',1414886400000,300
'New Users',1414800000000,12
'New Users',1414886400000,5

维度/组如:

var dimension = ndx.dimension(function(d) { return [d.type, +d.date]; });
var group = dimension.group().reduceSum(function(d) { return +d.value });

系列图表如:

.seriesAccessor(function(d) { return "" + d.key[0]; })
.keyAccessor(function(d) { return +d.key[1]; })
.valueAccessor(function(d) { return +d.value; })

希望这是有道理的!

【问题讨论】:

  • 你找到解决办法了吗?

标签: javascript d3.js dc.js crossfilter


【解决方案1】:

我认为没有内置的方法可以做到这一点,但应该有。

不过,系列图表确实支持添加和删除系列。

您现在最好的选择可能是简单地过滤掉您不想看到的数据。您可以添加一个维度来执行此操作,或者您可以创建一个 fake group 来根据它们的键隐藏 bin。

为此请file an enhancement request

【讨论】:

  • 已添加问题!感谢您的快速响应,戈登!
  • 谢谢@scott_trinh。目前预过滤是否是一种合理的解决方法?
  • 是的,我想我可以这样解决它。预渲染钩子 FTW!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-23
  • 2010-11-08
  • 1970-01-01
  • 2019-02-12
  • 1970-01-01
  • 2017-05-12
  • 2011-08-10
相关资源
最近更新 更多