d3.js:获取输入域范围之外的刻度值

时间:2014-05-15 16:58:07

标签: javascript d3.js

给出值列表

var values = [245, 483, 498, 597, 726, 788, 799, 974];

我想获得"环绕" values域的范围:

// [200, 300, 400, 500, 600, 700, 800, 900, 1000]

使用以下内容对此意图不起作用:

var scale = d3.scale.linear().domain(d3.extent(values));
var ticks = scale.ticks(9);
// [300, 400, 500, 600, 700, 800, 900] == ticks

由于D3.js参考文献说明了这一点并不令人意外:

  

返回的刻度值保证在...范围内   输入域。

1 个答案:

答案 0 :(得分:1)

使用.nice()

var values = [245, 483, 498, 597, 726, 788, 799, 974];
var scale = d3.scale.linear().domain(d3.extent(values)).nice();
var ticks = scale.ticks(9);