我正在尝试使用ASP.NET 4中的MS Chart Control生成图表。这是一个标准的柱形图,我通过数据绑定调用存储过程的LINQ结果集来填充它。
该图显示了一段时间内的通话次数。它设置了一个详细说明时间跨度/日期范围的XAxis,以及YAxis详细说明呼叫总数。
如果结果集只返回一个电话号码的数据,那么一切都很好。但是,有时我想在同一个结果集中返回多个电话号码,并在图表上使用多个系列显示数据,因此列彼此相邻以便进行比较。
我知道,对于每个电话号码,我需要有一个单独的系列,如果我手动填充数据,或者手动创建多个系列作为概念验证,我知道它有效。但我无法自动将电话号码分成单个系列。
我正在寻找的是一个属性,用于指定结果集中的列以对系列进行分组,但我似乎无法找到它(可能因为它不存在?)。
数据如下所示:
row_date call_total ext_no
---------- ---------- ------
2011-01-01 18 1000
2011-02-01 9 1000
2011-03-01 28 1000
2011-01-01 49 1001
2011-02-01 34 1001
2011-03-01 29 1001
任何帮助?
答案 0 :(得分:3)
绝对典型。一旦你承认并发布问题,它就会跳到你面前。
答案很简单。而不是使用
数据绑定我的LINQ结果集Chart.DataSource = <LINQ QUERY>
Chart.DataBind()
您需要使用
Chart.DataBindCrossTable(<LINQ QUERY>,<COL TO GROUP>,<X COL>,<Y COL>)
我(终于)在这篇文章中发现了这个: