d3背后的逻辑是什么.js nice()刻度

What is the logic behind d3.js nice() ticks

本文关键字:nice 刻度 js 是什么 背后 d3      更新时间:2023-09-26

我在d3.js中生成了一些图表。我使用以下代码来计算要放入我的 y 轴的值,它就像一个魅力。

var s = d3.scale.linear().domain([minValue, maxValue]);
var ticks = s.nice().ticks(numberOfPoints);

但是,我现在必须使用 pycairo 编写 python 代码,它在服务器端生成 d3.js 图表的克隆。

我的问题是,有没有人知道上面代码中使用的逻辑,或者可以给出类似结果的东西,以便我可以在 python 中复制它以获得在我的 y 轴上使用的漂亮值?

D3 是开源的,因此您可以查找实现。它基本上归结为四舍五入极值:

domain[i0] = nice.floor(x0);
domain[i1] = nice.ceil(x1);