【发布时间】:2014-04-16 13:31:38
【问题描述】:
下午好
我有一个角度控制器,它有我在图表中显示的数据
<nvd3-multi-bar-horizontal-chart
ng-model="Data"
data="Data"
id="exampleId"
xAxisTickFormat="xAxisTickFormatFunction()"
yAxisTickFormat="yAxisTickFormatFunction()"
height={{height}}
showValues="true"
color="colorFunction()"
showXAxis="true"
margin="{left:100}"
interactive="true"
>
<svg></svg>
</nvd3-multi-bar-horizontal-chart>
编辑: 应用程序需要做的是显示数组中的所有数据,用户可以调整该数组的 1 个元素
我现在尝试在页面上使用 ng-click 按钮来模拟这个,该按钮执行以下方法来调整数组中的 1 个元素
$scope.buttonClick = function(){
$scope.Data[0].values[0][1] = 2345; //this changes the data but does not update the chart
$scope.Data = [
{
key: "timeData",
values: [
["test", 1234]
]
}
] //this completely overrides the array and replaces it (which i dont want)
};
控制器更新数据但图表不更新
我通过显示段落中数据的第一个条目进行了测试,该段落确实更新了
有没有人知道如何解决这个问题
(指向 Angular 中使用的指令的链接 chart directive)
提前致谢
【问题讨论】:
-
你能说明你是如何更新数据的吗?我只是在没有问题的情况下完成了它......jsfiddle.net/ncapito/A6Tk5
-
感谢您的帮助,通过查看您所做的小提琴,我至少看到它发生了变化,这已经是向前迈进了一步,我编辑了我的帖子,向您展示代码的作用和我尝试了什么做改变数据。在 buttonClick 方法中,您会看到我尝试过的两件事,一次实际更新,另一件事更新数据但不更新图表。我不知道为什么会这样......问候
-
它不知道数据在变化……它只看对
$scope.Data的引用。
标签: javascript angularjs d3.js