我有2个图表。条形图和圆环图(有3个类别['A','B','C'])。 当我点击甜甜圈的一段时,我切换该元素在过滤器中的成员资格。
e.g。如果选择['A','B','C'],然后点击'A',我就会留下['B','C']。如果我再次点击“A”,那么我将返回到完整集。
是否可以更改此行为,以便点击“取消选择”不是“A”的所有内容。所以当我点击'A'时,我得到'A',当我点击'B'时,我得到'B'等。
这个example在第174行的rowChart中实现了这一点,但是我既不理解实现,也不能在我自己的工作中重现这一点。
相关代码粘贴在此处:
rowChart.width(340)
.height(850)
.dimension(cityDimension)
.group(cityGroup)
.renderLabel(true)
.colors(["#a60000","#ff0000", "#ff4040","#ff7373","#67e667","#39e639","#00cc00"])
.colorDomain([0, 0])
.renderlet(function (chart) { // <-this bit onwards does the magic (I think)
bubbleChart.filter(chart.filter());
})
.on("filtered", function (chart) {
dc.events.trigger(function () {
bubbleChart.filter(chart.filter());
});
});
答案 0 :(得分:0)
在d3中,如果你需要从更大的数据集中过滤一些数据,你可以这样做:
var filter = dataset.filter(function (d) { retrurn d.ValueToFilter == "FilterToApply"; });
例如,如果您有一个水果数据集,并且您只想要橙色,那么您可以这样做:
var filter = dataset.filter(function (d) { return d.fruit == "orange"; })
这将仅返回"orange"
d.fruit
属性的值