dc.js数字显示小部件

时间:2014-10-09 18:53:54

标签: javascript dc.js crossfilter

我是dc.js的新手...并且老老实实地对数字显示小部件发生的事情一无所知。我试着查看这个例子,并且基本上将它的部分文本逐字复制到我的代码中,希望它可以工作(但知道它不会)。我的目标是显示折线图的平均值(坐标分数)(根据交叉滤波器改变)。有什么建议吗?...

var ndx = crossfilter(csv);
var all = ndx.groupAll();
var bysat = ndx.dimension(function(d) { return d.compositesat; });

var boxND = dc.numberDisplay("#number-box");

var satavgnum = bysat.group().reduce(
          function (p, v) {
              ++p.n;
              p.tot += v.compositesat;
              return p;
          },
          function (p, v) {
              --p.n;
              p.tot -= v.compositesat;
              return p;
          },
          function () { return {n:0,tot:0}; }
      );

var average = function(d) {
    return d.n ? d.tot / d.n: 0; };

boxND
    .formatNumber(d3.format(".3s"))
    .valueAccessor(average)
    .group(satavgnum);

1 个答案:

答案 0 :(得分:2)

"它不起作用。"你得到了什么结果? 0?喃?空白?

如果您看到了结果但错误,那么现在是时候拔出调试器并查看数据有什么问题了。这里有几个提示:

https://github.com/dc-js/dc.js/wiki/FAQ#tell-whether-my-groups-are-functioning-correctly--whether-my-input-data-is-good

如果您没有收到任何结果,请尝试将一些初始文本放入#number-box div,然后查看是否会被覆盖。

事实上,您似乎已经非常忠实地复制和粘贴了examples / number.html,如果没有小提琴或者至少有一个数据示例,很难说出现了什么问题。< / p>