d3.js t.map不是一个函数

时间:2013-06-13 13:56:23

标签: javascript d3.js

希望有人可以帮助我,因为我找不到有关此错误的任何参考。

我正在处理这段代码:

var xMin = d3.min(data, function(d) { return d.value; });
var xMax = d3.max(data, function(d) { return d.value; });

if (0 > xMin & 0 > xMax) {
  xMax = 0;
}

if (0 < xMin & 0 < xMax) { 
  xMin = 0;
}

x.domain(xMin, xMax).nice();
y.domain(data.map(function(d) { return d.label; }));

但我必须犯了一些错误,因为现在加载块在Web控制台中显示以下错误消息:

  

“TypeError:t.map不是函数@ http://d3js.org/d3.v3.min.js:2

2 个答案:

答案 0 :(得分:14)

.domain()将数组作为参数,即

x.domain(xMin, xMax).nice();

应该是

x.domain([xMin, xMax]).nice();

答案 1 :(得分:0)

从示例切换模拟数据时,出现了此错误。

   var dataset = d3.layout.stack()(["CountPending", "CountDenied"].map(function (type) {
            return data.map(function (d) {
                return { x: d.Name, y: +d[type] };
            });
        }));

在我的数据集中,示例数据使用["pending","denied"],而我的真实数据使用以下键["CountPending", "CountDenied"]

使用右键!

虽然这可能无法帮助OP,但我希望它可以帮助某人。