我在 SSRS 报告中有一个图表,它的 Y 轴显示来自销售人员的总收入。Y 轴的单位是“百万”,非常适合总量。
然而,大约有几千个业务员,当在参数面板中选择一个特定的业务员时,他/她的销售额可能只有“百”的水平。因此,图表上的条形太小而无法识别。
有没有办法在运行期间动态改变 Y 轴单位?
我在 SSRS 报告中有一个图表,它的 Y 轴显示来自销售人员的总收入。Y 轴的单位是“百万”,非常适合总量。
然而,大约有几千个业务员,当在参数面板中选择一个特定的业务员时,他/她的销售额可能只有“百”的水平。因此,图表上的条形太小而无法识别。
有没有办法在运行期间动态改变 Y 轴单位?
如您所见,在图表设计器中,您可以设置Show Values in,但不能基于表达式:
但是,如果您查看 Chart Axis 的属性,您可以发现它对应于基于表达式的属性LabelsFormat:
因此,当您在图表设计器中选择 Millions 时,格式表达式将类似于:
0,,;(0,,)
数千将看起来像:
0,;(0,)
基于此,您可以在考虑数据的情况下使LabelsFormat基于表达式:
=IIf(Max(Fields!TotalSales.Value) > 100000, "0,,;(0,,)", "0,;(0,)")
相应地更新轴标题可能也很有用,例如:
=IIf(Max(Fields!TotalSales.Value) > 100000, "Sales (Millions)", "Sales (thousands)")
考虑一个简单的数据集和图表:
Axis 根据基础数据进行适当更新:
您显然需要适应您的特定数据,但希望这会为您指明正确的方向。