JavaScript
var pictures = [
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "JPG", size: 2 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 },
{ type: "PNG", size: 3 }
];
var dataSource = new kendo.data.DataSource({
data: pictures,
//create group and aggregates
group: {
field: "type",
aggregates: [
{ field: "size", aggregate: "sum" }
]
}
});
//read dataSource to load the data
dataSource.read();
var series = [],
categories = [],
items = dataSource.view(),
length = items.length,
item;
//create the chart series
for (var i = 0; i < length; i++) {
item = items[i];
series.push(item.aggregates.size.sum);
categories.push(item.value);
}
//initialize the chart
$(document).ready(function() {
$("#chart").kendoChart({
dataSource: dataSource,
seriesDefaults: {
type: "bar"
},
series: [{name: "size", data: series}],
categoryAxis: {
categories: categories
},
tooltip: {
visible: true
}
});
});