I have run into a problem while trying to do some on the fly charts.
I provided a dojo with the problem, what happens is that category axis doesn't scale the values so it goes like this 2015 - 2016 - 2015 -2016.
I can't seem to figure out the problem.
http://dojo.telerik.com/eWONO/11
Any help is much appreciated,
Thanks.
5 Answers, 1 is accepted
0
Dragos
Top achievements
Rank 1
answered on 22 Mar 2016, 08:17 AM
Can anyone help with this ???, i can reproduce this issue with a lot if examples, the x axis just divides like this..
0
EZ
Top achievements
Rank 2
answered on 22 Mar 2016, 04:06 PM
I would transform the data into a grouped dataSource like this:
var
dataForChart = [];
var
grpDataSource;
for
(
var
i = 0; i < data.length; i++) {
for
(
var
j = 0; j < data[i].Values.length; j++){
var
item = {};
item.series = data[i].name;
item.date =
new
Date(data[i].Values[j].data);
item.value = data[i].Values[j].value;
dataForChart.push(item);
}
}
grpDataSource =
new
kendo.data.DataSource({
data: dataForChart,
group: {
field:
"series"
},
sort: {
field:
"date"
,
dir:
"asc"
},
schema: {
model: {
fields: {
date: {
type:
"date"
}
}
}
}
});
function
createChart() {
$(
"#chart"
).kendoChart({
title: {
text:
"Site Visitors Stats \n /thousands/"
},
legend: {
visible:
false
},
dataSource: grpDataSource,
series: [{
type:
"column"
,
field:
"value"
,
name:
"#= group.value #"
}],
categoryAxis: {
field:
"date"
,
majorGridLines: {
visible:
false
},
justified:
true
,
labels: {
font:
"10px sans-serif"
,
rotation: 70,
step: 3,
template:
'#: kendo.toString(kendo.parseDate(value), "MM/dd/yyyy") #'
},
},
tooltip: {
visible:
true
,
template:
"#= series.name #: #= value #"
}
});
}
Updated DOJO
0
Hi Erik,
Your approach seems perfectly fine.
Let us know if you have further questions about the Kendo UI widgets.
Regards,
Dimiter Topalov
Telerik
Your approach seems perfectly fine.
Let us know if you have further questions about the Kendo UI widgets.
Regards,
Dimiter Topalov
Telerik
Join us on our journey to create the world's most complete HTML 5 UI Framework - download Kendo UI now!
0
Mike
Top achievements
Rank 1
answered on 25 Mar 2016, 07:47 AM
So , if the chart does not have a datasource you can end up "sometimes" with a bad axis , but only sometimes , this feels like a bug
0
Hello,
The problem here is that the Chart doesn't see the category values as dates. They're only being parsed in the label templates.
Therefore it will plot them in the order that they appear from the data source.
You can use a date axis, but that's somewhat different, as it will plot a continuous time line, not just the set of points you supply.
I hope this makes sense.
Regards,
T. Tsonev
Telerik
The problem here is that the Chart doesn't see the category values as dates. They're only being parsed in the label templates.
Therefore it will plot them in the order that they appear from the data source.
You can use a date axis, but that's somewhat different, as it will plot a continuous time line, not just the set of points you supply.
I hope this makes sense.
Regards,
T. Tsonev
Telerik
Join us on our journey to create the world's most complete HTML 5 UI Framework - download Kendo UI now!