javascript - NVD3/D3 改变y轴最小值

标签 javascript d3.js nvd3.js

我目前正在使用 NVD3 制作一些折线图。我想知道是否有可能使 y 轴刻度始终从 0 开始。目前它总是从最低的 y 值开始。我试过使用 tickValues 但我不想更改其他值。我还尝试添加一个值为 0 的数据点,但这似乎是一种解决方法,它会影响图形的外观。有什么想法吗?

最佳答案

大多数图表都有一个 forceX 和 forceY 函数,它们采用一组值。你可以像这样使用它:

  var chart = nv.models.lineChart();
  chart.forceX([0, 10])
  chart.forceY([-1, 1])

这将确保在您的 xAxis 上始终显示至少 0 和 10,但如果您直接操作它则不会限制域。也就是说,如果您执行以下操作:

chart.yAxis.scale().domain([0, maxValue]);

并且您的数据具有不会显示在图表上的负 X 值,因为它们会落在指定域之外,但如果您使用 forceX,它们会显示。

关于javascript - NVD3/D3 改变y轴最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17067595/

相关文章:

javascript - 将 useState 状态传递给 React 中的路由器组件

javascript - Learnyounode教程#11 HTTP文件服务器

javascript - 如何根据对象的 "blueprints"将给定对象与类别匹配

javascript - D3 更新共现图中的颜色

javascript - 没有像 d3 这样的库的单调三次插值的 SVG 实现

javascript - 如何用Django-nvd3绘制圆环图

javascript - nvd3 删除空点的工具提示内容

javascript - 如何在node.js中强制调用同步

javascript - 使用 d3pie.js 饼图更新数据时出错

d3.js - 在 nvd3 箱线图上禁用 y 轴最大值和最小值