繁体   English   中英

将NVD3中的y轴最大标签设置为高一个刻度增量

[英]Set y-axis maximum label to one tick increment higher in NVD3

我正在使用NVD3(d3的包装器)绘制折线图。 我希望图形中的数据在轴的范围内。 但是,它看起来与其他标签不一致,因为图表单独显示了我的数据集的最大值。 看截图:

在此处输入图片说明

在这个例子中,18554.41是我的最高数据点。 我想看到的是刻度线/轴标注在整个过程中都以相同的舍入顺序进行,没有溢出。 即20,000,18000,16000等。

需要注意的是,我的数据集可以有很大的不同-因此,我不能只设置一个最大值。 有没有一种方法可以将滴答声计数增加一个或多个?

当前相关代码:

var chart = nv.models.lineChart()
                    .showYAxis(true)
                    .forceY([0]);

chart.yAxis
         .axisLabel('£')
         .tickFormat(d3.format(','))
         .ticks(8);

编辑:添加了https://jsfiddle.net/60equ79h/2/

在小提琴中,我希望第一个数据集的最高标签为10,000。 第二个是80。即我希望将y轴增加一个刻度

如果我正确理解了您的问题,则可以强制yAxis使用您定义的值。 您可以对值进行硬编码或编写一些巧妙的方法来标识yAxis的最小值和最大值。

更新图表以具有以下内容:

chart.forceY([0, 20000]); // [min, max]

希望能帮助到你

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM