Nvd3:如果所有y值都为0,如何阻止在-1和1之间显示图表?

byt*_*ian 10 javascript charts d3.js nvd3.js

有一点修改版本的linePlusBarChart model(),当传递所有y值设置为零的数据时,Y轴显示1到-1之间的范围.可以设置0到1之间的范围吗?

试图与chart.yAxis.scale().domain([0]);chart.forceY([0]),但一无所获.

Ame*_*aBR 3

forceY强制域包含您传入的值,它不会缩小从数据创建的域。要设置特定域,您可以设置chart.yDomain([0,1]). 但是,无论您的数据是什么,这都会将域设置为 [0,1]。据我了解,您只想在所有 y 值均为 0 时更改行为。

为此,请尝试chart.forceY([1])。现在,当 NVD3 尝试找出域时,它将看到数据中的零值强制语句中的 1。因此它将有一个有效的域,并且不必通过在数据值中加1和减1来构成一个域。