gpt4 book ai didi

javascript - Angularjs:对图表的数组元素求和

转载 作者:行者123 更新时间:2023-12-03 09:40:02 25 4
gpt4 key购买 nike

使用 tc-angular-chartjs 我可以让饼图发挥作用,但无法弄清楚如何对标签值求和以正确显示。另外,我可以使用他们的示例让条形图工作,但不能通过 ajax 调用使用外部数据。

注意:我对 angularjs 和 javascript 都很陌生,所以我可能在这里遗漏了一些简单的东西,但我已经尝试解决这个问题好几天了,但没有运气。

饼图示例:我正在使用工厂和 reangular 来获取外部数据并且有效。

问题#1

为了计算元素值,我尝试了找到的几个引用文献,但没有成功尝试将其合并到图表中。这是我尝试过的引用之一。其中大多数都是我见过的变化:occurrence of array elements

图表代码片段:

services.forEach(function(service) {
data.push({
'value': incident.service.name.length, // Need to calculate sum of each 'label: service' element. [Used .length to get test value]
'color': colors.getRandom(), // This works, but need colors to be same for ea. service name
'highlight': 'brown',
'label': incident.service.name
});
$scope.data = data;
//console.log($scope.data);
});

数据输出示例:

    Array[65]
0: Object
color: "orange"
highlight: "brown"
label: "Service1"
value: 36
__proto__: Object
1: Object
color: "navy"
highlight: "brown"
label: "Service1"
value: 40
__proto__: Object
2: Object
color: "green"
highlight: "brown"
label: "Service2"
value: 40
3: Object
color: "blue"
highlight: "brown"
label: "Service3"
value: 20
etc ..

HTML:

  <div class="chart" ng-controller="chartController" style="margin-top:20px;">
<canvas tc-chartjs-pie chart-options="options" chart-data="data" auto-legend></canvas>
</div>

条形图只能使用其网站上的示例。

问题 2 - 我将进一步调查此问题

尝试下面我得到:TypeError:无法读取未定义的属性“长度”

代码片段:

//Chart.js 数据

    services.forEach(function(service) {
data.push({
label: incident.service.name,
fillColor: 'rgba(220,220,220,0.5)',
strokeColor: 'rgba(220,220,220,0.8)',
highlightFill: 'rgba(220,220,220,0.75)',
highlightStroke: 'rgba(220,220,220,1)',
data: incident.service.name.length
});
$scope.data = data;
//console.log($scope.data);
});

最佳答案

我没有足够的代表来添加评论,所以我将其放在答案中

变量incident的值是多少?它来自异步服务、硬编码还是来自同步计算?

我会在循环之前打印出 incident 的值,以便您可以了解循环之前的内容。

另外,forEach内部的service结构是怎样的?您是否打算在循环中将其用作 incident[service].name

关于javascript - Angularjs:对图表的数组元素求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31214079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com