2010-11-11 26 views
0

我在报表生成器2.0中有一个条形图,沿y轴有很多值。我想分割图表以显示两个图表区域,或者甚至有两个单独的图表,每个图表只有y轴上一半的值。因此,图表1将具有y轴值A,B,C和D,而图表2将具有E,F,G和H.我想我可以在图表上有一个过滤器,以便它只显示行ColumnValue < E(对于图1)和ColumnValue> = E(对于图2)。但是我怎样才能编写这样的过滤器呢?它可能需要做Round(Count(ColumnValue)/2)来获得中间值的索引,但是如何才能真正获得该值(比如E)以进行比较?将报表生成器图表分成两个图表区域以分散数据

或者,也许有一些内置的方式,通过将图表拆分为两个单独的图表来打破长轴来美化图表。我不知道。建议?

回答

0

尝试使用来自相同源的数据集的两个图,与第一图形像下面在过滤器上:

RunningValue(Fields!GroupFieldName.Value,CountDistinct) <= CountDistinct(Fields!GroupFieldName.Value)/2

- 和对类似的公式第二,用>代替<=

+0

我将此设置为图表上的过滤器,但由于此错误而无法保存报表:“图表'Chart2'的FilterValue使用集合函数RunningValue。RunningValue无法在过滤器中使用。 – 2010-11-15 18:52:57

+0

我还没有尝试在BIDS报告设计器中运行这个功能 - 它允许输入这些条件并将其保存为针对图形的过滤器,但在*运行*报告中使用聚合或运行总功能时会返回错误!假设你正在使用带有窗口化分析功能的SQL数据源,比如Oracle或SQLServer,我建议在查询中添加列以保存组数的不同计数的运行和总计,然后过滤“Fields! '* RunningTotal *'.Value <= Fields!'* GrandTotal *'.Value)/ 2'。 – 2010-11-16 11:41:22