我在d3.js中生成了一些图表。我使用下面的代码来计算放在y轴上的值,它就像一个魅力。
var s = d3.scale.linear().domain([minValue, maxValue]);
var ticks = s.nice().ticks(numberOfPoints);
但是我现在必须使用pycairo编写python代码,它会在服务器端生成d3.js图表的克隆。
我的问题是,是否有人知道上面代码中使用的逻辑,或者可以给出类似结果的东西,以便我可以在python中复制它以获得在y轴中使用的漂亮值?
答案 0 :(得分:7)
D3是开源的,所以你可以look up the implementation。它基本上归结为四舍五入极值:
domain[i0] = nice.floor(x0);
domain[i1] = nice.ceil(x1);