Javascript 剑道UI图表中的分组和计数事件
我有一个数据源,我想根据Javascript 剑道UI图表中的分组和计数事件,javascript,charts,kendo-ui,Javascript,Charts,Kendo Ui,我有一个数据源,我想根据项对其进行分组,并计算图表中出现的次数 例如,“项目1”的计数为2,“项目2”的计数为3,“项目3”的计数为1 我已尝试添加组,但仍不起作用: group: [{ field: "item" }], 有人知道我如何修改以下代码来执行上述功能吗 var dataSource = new kendo.data.DataSource({ data: [ { id: 1, item: "Item 1" }, { id: 2, i
项对其进行分组
,并计算图表中出现的次数
例如,“项目1”的计数为2,“项目2”的计数为3,“项目3”的计数为1
我已尝试添加组
,但仍不起作用:
group: [{
field: "item"
}],
有人知道我如何修改以下代码来执行上述功能吗
var dataSource = new kendo.data.DataSource({
data: [
{ id: 1, item: "Item 1" },
{ id: 2, item: "Item 1" },
{ id: 3, item: "Item 2" },
{ id: 4, item: "Item 2" },
{ id: 5, item: "Item 2" },
{ id: 6, item: "Item 3" }
],
group: [{
field: "item"
}],
schema: {
model: {
id: "id",
fields: {
id: { type: "number", editable: false },
value: { type: "number" },
item: { type: "string" }
}
}
}
});
$("#chart").kendoChart({
dataSource: dataSource,
autoBind: false,
categoryAxis: {
field: "item"
},
series: [
{ field: "value", name: "Value" }
]
});
dataSource.read();
您可以使用分组数据源上的读取数据,然后创建项目及其计数的新数组:
var transformedData = [];
dataSource.fetch(function () {
var v = this.view();
for (var i = 0; i < v.length; i++) {
var item = v[i].value;
var val = v[i].items.length;
transformedData.push({item: item, value: val});
}
});
$("#chart").kendoChart({
dataSource: transformedData,
categoryAxis: {
field: "item"
},
series: [
{ field: "value", name: "Value" }
]
});
var transformedData=[];
dataSource.fetch(函数(){
var v=this.view();
对于(变量i=0;i
更新谢谢您的回答!