2

嗨,我需要将带有 NVD3/D3 的折线图限制为没有负数的 Y 轴。我正在尝试根据这个答案来做到这一点:

chart.y1Axis.scale().domain([0, maxValue])
            .tickFormat(d3.format(',f'));

但是将“.scale().domain([0, maxValue])”添加到链中会杀死整个图表。我不知道如何做这个基本的事情,也找不到一个有效的例子。有什么想法吗?谢谢!

4

1 回答 1

2

y1Axis.scale()返回一个缩放对象,它.domain([0, maxValue])会修改。

.tickFormat(d3.format(',f'))需要一个轴对象,而不是比例对象。要解决此问题,.scale()请在完成修改轴之后放置:

chart.y1Axis
    .tickFormat(d3.format(',f'))
    .tickValues([1, 2, 3, 5, 8, 13, 21])
    .etc(...)
  .scale()
    .domain([0, maxValue])
于 2013-09-13T23:27:42.673 回答