2015-05-27 3 views
6

Я новичок в dc.js.Доступ к фильтрованным/сжатым данным из диаграммы dc.js

У меня есть некоторые данные:

var data = 
[ 
     {date: Date.UTC(2015, 4, 4), frame: "frame1" }, 
     {date: Date.UTC(2015, 2, 1), frame: "frame2" }, 
     {date: Date.UTC(2015, 2, 11), frame: "frame3" }, 
     {date: Date.UTC(2015, 1, 4), frame: "frame4" }, 
]; 

//create crossfilter 
    cf = crossfilter(data); 
//create dimension 
    byDate = cf.dimension(function (d) { 
      return d.date; 
    }); 
//create group 
    byDateGroup = byDate.group(); 

И я работаю с этим dc.lineChart:

//configure timeGraph 
    timeGraph = dc.lineChart("#range") 
    .width(document.body.clientWidth) 
    .height(100) 
    .dimension(byDate) 
    .group(byDateGroup) 
    .transitionDuration(500) 
    .elasticY(true) 
    .x(d3.time.scale().domain([(byDate.bottom(1))[0].date, (byDate.top(1))[0].date + 1000])) 
    ; 

И я хотел бы получить доступ к данным, которые фильтруются с помощью регулируемой панели выбора диапазона. Я думаю, что передача функции в onfiltered будет работать, но я не знаю, что получить от chart, чтобы вернуть данные, отфильтрованные в данный момент.

timeGraph.on("filtered", function (chart) { 
    console.log(/* print the data filtered by the 'range selector' */); 
}); 

Here's a JSFiddle with an example. Если пример были правильно работать, все, что отображается в таблице должны отображаться в консоли.

Заранее спасибо.

ответ