防止NVD3图表轴中的负值

时间:2013-09-13 22:13:05

标签: javascript d3.js nvd3.js

嗨我需要将NVD3 / D3的折线图限制为Y轴没有负数。我试图基于this answer这样做:

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

但添加" .scale()。domain([0,maxValue])"连锁杀死了整个图表。我无法弄清楚如何做这个基本的事情,却无法找到一个有效的例子。有什么想法吗?谢谢!

1 个答案:

答案 0 :(得分: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])