kendo图表条型系列与线型系列相结合,图表恢复为列类型系列

时间:2013-03-01 21:33:06

标签: charts kendo-ui

我正在尝试添加一个线型系列,即“series.Line(s => s.Name(”goal“)”到图表 - 这用于显示排序的阈值。剩下的系列是条形类型系列:“series.Bar(s = s.Name(”Rate1“)和”series.Bar(s = s.Name(“Rate2”)和“series.Bar(s = s.Name(” Rate3“)等等。如果我删除”目标“行代码,那么图表会按预期呈现为水平条;但是,如果我包含”目标“行代码,则图表呈现为垂直列(默认情况下我假设)有什么建议吗?

2 个答案:

答案 0 :(得分:0)

我认为你在这里缺少一些理解。

一条线将从左向右移动,显示(通常)一个值的进展(通常在一段时间内)。意思是它们的零值在水​​平轴上。

条形在垂直轴上的值为零。

因此2系列类型不兼容。因此,Kendo将图表从“Bar”更改为“Column”。

所以基本上,你要找的是垂直线系列类型(我认为不存在)。

您可能希望将这些显示为子弹图表。

http://demos.kendoui.com/dataviz/bullet-charts/index.html

答案 1 :(得分:0)

根据Telerik

  

图表项目不提供对Pareto图表的内置支持   换句话说,图表项目无法达到百分比   计算你和你应该在绑定之前处理   图表。完成后,您可以通过以下方式实现相同的功能   结合Bar和Line系列类型。要创建第二个 Yaxis   标记为0%到100%,请尝试以下代码段:

chart1.PlotArea.YAxis.AutoScale = False
chart1.PlotArea.YAxis.AddRange(0, 100, 10)
chart1.PlotArea.YAxis.Appearance.ValueFormat = ChartValueFormat.Percent

以下是如何使用MySQL预先计算百分比的示例:

SELECT a.`Year`, @count := (a.`count`) AS `Count`,
     @total := ROUND((@count)/(SELECT @total := count(`year`) AS `total` FROM `table` c) * 100, 2) as `% of Total`,
     @cumulative := (@total + @cumulative) as `Cumulative %`
FROM (SELECT @cumulative := 0, `year`,count(`year`) AS `count` FROM `table` `data` GROUP BY `year` ORDER BY `count` DESC) a
ORDER BY `Count` DESC;