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

更新

谢谢您的回答!