javascript - Billboard.js 中图表的 Y 轴未正确更新

标签 javascript d3.js billboard.js

有一个用 billboard.js 生成的图表我想更新 Y 轴的最小/最大值。

为此,我用 html 编写:

<span>
    Max:</br>
    <input ng-change="$ctrl.updateY()" ng-model="$ctrl.maxValue"></br>
    Min:</br>
    <input ng-change="$ctrl.updateY()" ng-model="$ctrl.minValue"></br>
</span>

在 JS 中:

updateY() {
    this.lineView.chart.axis.max({y: this.maxValue});
    this.lineView.chart.axis.min({y: this.minValue});
}

它对于 min 值工作正常,但对于 max 值则不然。

例如,如果我将最大值设置为 100,则 Y 轴上的值为 1000

对于1000,它是100000

对于10000,它是1000000。我猜它会额外加一个零,但没有找到如何以及在哪里。对于 min 一切都工作正常。这是一个错误吗?

有什么想法吗?

最佳答案

如果使用range()而不是min()max(),这个问题就可以解决。由于某种原因,它无法使用后面的方法正确更新。

updateY() {
    const maxNumber = Number(this.maxValue);
    const minNumber = Number(this.minValue);
    this.lineView.chart.axis.range({max: {y: maxNumber}, min: {y: minNumber}});
}

关于javascript - Billboard.js 中图表的 Y 轴未正确更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48707042/

相关文章:

javascript - MongoDB .find 在 shell 中有效,但在 js 中无效

javascript - d3js 重叠元素 : how to "pass through" clicks to "lower" element?

javascript - 打印一个 div 不正确

javascript - D3 使用方法链时的不同行为

javascript - 一组矩形的 D3.js 过渡

javascript - 在 billboard.js 中控制 x 轴刻度的多行传播

javascript - 如何在 billboard.js 中使用更复杂的 svg 作为图表点?

javascript - 如何创建粘性导航栏 css 和 javascript

javascript - D3.js 让节点出现在没有 "bounce"的中间

javascript - 虚线将图表上的空值转换为零