我正在创建一个这样的分组条形图:
$("#chart").kendoChart({
dataSource: {
data: rawdata,
group: { field: "Serie" },
},
legend: {
position: "top"
},
plotArea: {
background: "white",
},
seriesDefaults: {
type: "column",
style: "smooth",
stack: true
},
series: [
{
field: 'Valor1',
labels: {
visible: true,
background: '',
format: 'p1',
color: 'white',
position: 'center'
},
}
],
valueAxis: {
max: 1,
labels: {
format: "p2"
},
line: {
visible: false
},
axisCrossingValue: -10,
},
categoryAxis: {
field: "Segmento",
majorGridLines: {
visible: false
}
},
tooltip: {
visible: true,
template: "#= series.name # <br /> " +
"Valor = #= kendo.format('{0:p2}', value) # <br/> " +
"Tooltip = #= dataItem.Tooltip # ",
}
});
我的数据有四个属性:Serie,Segmento,Valor1,Tooltip。一个数据点的示例:
{
"Serie": "S1",
"Segmento": "C1",
"Valor1": 0.31500380634422465,
"Tooltip": 20,
}
堆栈栏的值在chrome中是不正确的,但是在Firefox中,即没问题。
在firefox中更正图形,即: chrome中的图表不正确:
这是一个现场演示:http://trykendoui.telerik.com/anET/9
我该如何解决这个问题?
答案 0 :(得分:2)
这是Chrome实施Array.sort
的问题;见this discussion。
您可以通过明确地对数据源进行排序来修复它:
dataSource: {
data: rawdata,
group: { field: "Serie" },
sort: [{ field: "Serie", dir: "asc"}, { field: "Segmento", dir: "asc"} ]
},