使用Kendo Data Viz MVC创建条形图

时间:2013-12-20 12:04:45

标签: c# asp.net-mvc kendo-ui kendo-dataviz

我想使用Kendo Data Viz创建一个条形图,数据如下所示

     Service Center      Trouble Found      Total Trouble Found
     Al Badia            dark screen        6
     Al Badia            no/small sound     6
     Al Badia            Others             2
     Al Ain              dark screen        2

我想在两个栏中显示上述数据

对于Al Badia(将会有一个酒吧,对于每个发现@particular服务中心的麻烦都会显示3种颜色,当它们在每个上面盘旋时,它会显示该服务中心的总体问题,对于Al Ain来说只有一个吧,因为只有一个麻烦。

我能用kendo mvc包装器实现这个目的吗? 我们应该如何创建POCO来实现这一目标?

1 个答案:

答案 0 :(得分:2)

您应该按服务中心对它们进行分组,以便您的对象是这样的

[{ServiceCenter: Al Bandia,
 DarkScreen: 6,
 SmallSround: 6,
 Other: 2
 },
 {ServiceCenter: Al Ain,
 DarkScreen: 2,
 SmallSround: 0,
 Other: 0
 }]

然后你可以用这样的堆叠列构建一个剑道图表(我在我的项目中使用ViewModels)

@(Html.Kendo().Chart<Project.ViewModels.ServiceCenterViewModel>()
 .Name("ChartName")
 .Series(series =>
 {
     series.Bar(s => s.DarkScreen);
     series.Bar(s => s.SmallSound);
     series.Bar(s => s.Other);
 })
 .SeriesDefaults(sd => sd.Bar().Stack(true))
 .CategoryAxis(axis => axis.Categories(c => c.ServiceCenter))
 .Tooltip(t => t.Template("Center: #= data.category # <br> Total: #= dataItem.DarkScreen + dataItem.SmallSound + dataItem.Other #"))
)