我使用d3.js实现了一个可重用的图表(散点图)。我从csv文件output.csv获得x和y坐标。
如何初始化图表:
var chart = scatterPlot()
.width(400)
.height(400)
.x(function (d) { return d.x; }) // x is the first coordinate, located in the csv file
.y(function (d) { return d.y; }); // y is second coordinate
d3.csv("output.csv", function (data) {
d3.select(".scatterplot")
.datum(data)
.call(chart)
});现在我想使用crossfilter库来提供链接和刷,但是我在实现上遇到了问题。我试过的是:
var csData = crossfilter(data);
csData.dimXY = csData.dimension(function(d){
return d.x + d.y;
});
csData.byXY = csData.dimX.group();
d3.select(".scatterplot")
.datum(csData.dimXY)
.call(chart)如何将交叉过滤器集成到这个问题中?
小提琴- JSFiddle
发布于 2018-04-13 23:14:41
对我有用的是:
var chart = scatterPlot()
.width(400)
.height(400)
.x(function (d) { return d.key[0]; }) // x is the first coordinate, located in the csv file
.y(function (d) { return d.key[0]; }); // y is second coordinate
var csData = crossfilter(data);
csData.dimXY = csData.dimension(function(d){
return [parseFloat(d.x1),parseFloat(d.y1)];
});
csData.byXY = csData.dimXY.group();
d3.select("#scatterplot1")
.datum(csData.byScatter.all())
.call(chart);https://stackoverflow.com/questions/49756311
复制相似问题