角度NVD3 Y轴将最小数据值设置为最大范围值

时间:2015-08-22 01:02:31

标签: javascript xml angularjs nvd3.js angular-nvd3

我将解析的xml数据推送到nvd3图表的值和标签。由于某种原因,我的一个离散条形图,一个在#" Top 5 SIC by Comments"在下拉菜单中,我们没有做它应该做的事情。 y轴范围设置为所有点的最小y值,因此它使所有条形图都相同。我已经从我制作的其他图表中复制了设置,因此我不确定出了什么问题(我不认为这可能是一个错字,我的其他离散条形图正在运行)。我尝试更改xml文件sample4.xml中的值,但尺寸仍保持不变。只有当我手动将数值改为" 900"时,条形,或者更确切地说是y轴,恢复到正确格式的唯一方法。在控制器本身,但我不能这样,因为我需要从xml文件中推送值。我错过的配置是否有问题?或者也许有办法强制y轴将最大范围值设置为数据集中的最大值?

这是我的plnkr

我尝试过在线研究,但我还没有在论坛中发现任何此类错误的例子。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

每次更新数据时,请尝试使用angular-nvd3库提供的api对象来调用它的updateWithData(数据)方法。 (如果您也更新选项,则可以调用updateWithOptions(updatedOptions)。

在.html中获取分配的api对象。 (请确保,您事先没有在控制器的范围内创建对象名称barApi,这是我犯的错误。): -

<nvd3 options="optionsBar" data="barData" api="barApi"></nvd3>

在您的下拉更改活动中,您可以拨打以下电话: -

$scope.barApi.updateWithData(data)

其中data是您的数据对象。 另请参阅[krispo于2014年9月16日评论]的评论关于以下主题。 https://github.com/krispo/angular-nvd3/issues/37