Reporting services SSRS堆叠柱形图-将数据标记为堆栈的百分比
如果我想将每个系列的值显示为堆栈的百分比,我将如何实现这一点?如果我使用#百分比作为数据标签,它会给出该系列的百分比,而不是该类别(月份)的百分比。看起来这应该是一件简单的事情(占整个堆栈的百分比),但我一直无法使它工作。如果我的数据如下所示:Reporting services SSRS堆叠柱形图-将数据标记为堆栈的百分比,reporting-services,charts,ssrs-2008,stacked-chart,Reporting Services,Charts,Ssrs 2008,Stacked Chart,如果我想将每个系列的值显示为堆栈的百分比,我将如何实现这一点?如果我使用#百分比作为数据标签,它会给出该系列的百分比,而不是该类别(月份)的百分比。看起来这应该是一件简单的事情(占整个堆栈的百分比),但我一直无法使它工作。如果我的数据如下所示: Month Prod1| Prod2| Prod3 ----------------------------- January | 5 | 5 | 5 February | 10 | 15 | 10 March |
Month Prod1| Prod2| Prod3
-----------------------------
January | 5 | 5 | 5
February | 10 | 15 | 10
March | 10 | 0 | 20
当我使用#百分比时,我的感受是1月/1月的标签是20%(5/(5+10+10))。我想展示的是33%(5/(5+5+5)),因为1月/Prod1是1月发货总量的33%。当然,在工作一天后,我只在将问题发布到SO后解决问题 我发现我可以使用以下数据标签表达式来实现这一点:
=Fields!series_value.Value/Sum(Fields!series_value.Value,"Chart7_CategoryGroupTotal"))
我只需要使用特定系列的值除以类别范围内这些系列值的总和。简单答案将选择图表系列标签,并在属性的Misc部分更改格式为##。##'%'您可以使用第二个表达式表示百分比。但为了更好地显示数据,我更喜欢显示计数和百分比
=CSTR(FORMAT(Fields!Val1.Value,"#,#")) &
" ("& ROUND(SUM(Fields!Val1.Value)/(SUM(Fields!Val1.Value)+SUM(Fields!Val2.Value))*100)
& "%)"