Javascript D3.js:如何从图形的涂刷区域选择数据?

Javascript D3.js:如何从图形的涂刷区域选择数据?,javascript,d3.js,Javascript,D3.js,我有下面的图表,其中鼠标刷浅蓝色区域用于选择数据。 如何从所选区域获取数据? 以下以及我尝试过的许多其他解决方案似乎都不起作用 brush.on('brush', function(d){ console.log(d); }); 请参见您可以使用以下方法获取笔刷选定的y轴范围: brush.on('brush', function(d){ k = brush.extent(); console.log(k); }); 要获取选定笔刷区域中的数据,请执行以下操

我有下面的图表,其中鼠标刷浅蓝色区域用于选择数据。

如何从所选区域获取数据? 以下以及我尝试过的许多其他解决方案似乎都不起作用

brush.on('brush', function(d){  
    console.log(d);
});

请参见

您可以使用以下方法获取笔刷选定的y轴范围:

brush.on('brush', function(d){  
    k = brush.extent();
    console.log(k);
});
要获取选定笔刷区域中的数据,请执行以下操作:

k = brush.extent();
j = data.filter(function(d){
    return k[0] <= d.date && k[1] >=d.date;
});
console.log(j)//this is the selected dataset
工作代码

希望这有帮助

对于d3v4,您可以使用以下方式:

风险值选择=d3.event.selection;
var e=selection.mapx.invert,x;//return[start,end]for Axis该console.log显示所选画笔区域的开始和结束时间,但如何获取所选画笔区域内的数据对象?您可以使用“我已更新我的答案并更新了小提琴”的范围来过滤数据。控制台将显示输出: