在 angular-nvd3 折线图中动态放大 y 轴范围

Dynamically scaling up y axis range in angular-nvd3 line chart

我正在使用 angular nvd3 指令 here 构建多线图表。该图表会自动将 y 轴缩放到所有绘制的系列中的最大值和最小值。我可以将其更改为最小值和最大值的 1.5 倍吗?或者我选择的任何其他动态配置?

要根据数据动态更改 Y 轴,一种方法是将 getMaxValue(*list*) 结果分配给一个变量,前提是您的数据位于 JSON 数组中。例如:

var maxValue = *dataUtil*.getMaxValue(datalist);

那么你需要在 nvd3 中使用 forceY 函数,并将上限分配给 maxValue,或者你想要的任何值(在你的情况下为 1.5):

$scope.optionsBar.chart.forceY = [0, maxValue * 1.5];

这将根据数据集中的最高数据值动态更改 Y 轴范围。

作为参考,请查看我的 plnkr 这个实现。