D3.js-从零开始的对数刻度

D3.js-从零开始的对数刻度,d3.js,D3.js,我正在绘制一个y轴,它应该以对数比例定义。范围从0到1000 如果我尝试 var yScale = d3.scale.log().domain([0, 1000]).range([height, 0]); d3.svg.axis().scale(yScale).orient("left"); 则y轴上仅显示0.01。根据d3文档,对数刻度范围不能为零 我试过了,但使用轴上的刻度会产生错误 是否有其他方法在y轴上绘制该范围(0到1000)?未定义0的对数。使用对数刻度时,不能有0(或任何负数)。

我正在绘制一个y轴,它应该以对数比例定义。范围从0到1000

如果我尝试

var yScale = d3.scale.log().domain([0, 1000]).range([height, 0]);
d3.svg.axis().scale(yScale).orient("left");
则y轴上仅显示0.01。根据d3文档,对数刻度范围不能为零

我试过了,但使用轴上的刻度会产生错误


是否有其他方法在y轴上绘制该范围(0到1000)?

未定义0的对数。使用对数刻度时,不能有0(或任何负数)。我是否可以使用不带零但将值映射回0-1000范围的差分刻度?我尝试了上面给出的stack over flow链接中给出的示例。但它不起作用。你可以用线性刻度。