d3 对数刻度不显示

d3 log scale does not display

我想在两个轴上显示一个对数刻度的等高线图。我找到了这个很好的例子来执行这个任务:

http://plnkr.co/edit/f1VThUpkHxUzxOBXmTCr?p=preview

然而,当我将刻度更改为对数刻度时

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

而不是

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

轴完全消失了。我认为问题是 log(0) = -infinity 但是如果我从 1 开始它不会改变任何东西。

有什么问题?

您想将 更改为不从 0 开始(我假设您更改了范围)

x.domain([1, dx]);

笨蛋 - http://plnkr.co/edit/RTzBztpVpR2GYXiVUogb?p=preview