Ich bin neu bei dc.js.Zugriff auf gefilterte/abgeschnittene Daten aus einem dc.js-Diagramm
Ich habe einige Daten:
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();
Und ich bin mit diesem 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]))
;
Und ich möchte die Daten zuzugreifen, die durch den einstellbaren Bereich Auswahlleiste gefiltert wird. Ich denke, die Übergabe einer Funktion an onfiltered
würde funktionieren, aber ich weiß nicht, auf was von chart
zugreifen, um die aktuell gefilterten Daten zurückzugeben.
timeGraph.on("filtered", function (chart) {
console.log(/* print the data filtered by the 'range selector' */);
});
Here's a JSFiddle with an example. Wenn das Beispiel ordnungsgemäß funktioniert waren, alles von der Tabelle angezeigt wird, in der Konsole erscheinen soll.
Vielen Dank im Voraus.
Das funktioniert perfekt, danke. – claytonkucera