d3线性刻度 - 无效值

时间:2015-10-31 12:37:14

标签: javascript d3.js scale

我是d3的新手(今天早上第一次开放)。我正在尝试从csv-data-doc进行线性缩放。 首先,我正在计算比例:

var x = d3.scale.linear()
  .range([0, width]);

然后我正在尝试使用它:

.attr("width", function(d) { return x(Math.abs(Math.round(d.Betrag))); })

然而它返回错误“width =”NaN“的无效值 这个工作(基本上没有线性缩放:

  .attr("width", function(d) { return Math.abs(Math.round(d.Betrag)); })

有人可以帮忙吗?感谢

2 个答案:

答案 0 :(得分:0)

传递给范围的宽度变量可能不是数字。否则我无法想到你得到NaN作为比例函数返回的其他原因。

答案 1 :(得分:0)

@Mark在上述评论中发布的答案是正确的。

var x = d3.scale.linear()
  .domain(d3.extent(data, function(d){return d.Betrag;}))
  .range([0, width]);

或者至少差点做他们应该做的事情......我现在注意到一些奇怪的现象