我在 SSRS 报告中有一个图表,它的 Y 轴显示了销售员的总收入。 Y 轴的单位是“百万”,它适用于总量。
然而,销售员大约有数千名,当在参数面板中选择一个特定的销售员时,他/她的销售额可能只有“百”级。因此,图表上的条形太小而无法识别。
有没有办法在运行期间动态改变Y轴单位?
最佳答案
如您所见,在图表设计器中您可以设置 在 中显示值,但你不能使这个基于表达式:
但是,如果您查看 属性为 图表轴 ,你可以认为这对应于一个属性 标签格式 其中是 基于表达式:
因此,当您在图表设计器中选择 Millions 时,格式表达式将类似于:
0,,;(0,,)
和数千看起来像:
0,;(0,)
基于此,您可以制作标签格式 考虑到数据的基于表达式:
=IIf(Max(Fields!TotalSales.Value) > 100000, "0,,;(0,,)", "0,;(0,)")
更新 可能也很有用轴标题 因此,类似于:
=IIf(Max(Fields!TotalSales.Value) > 100000, "Sales (Millions)", "Sales (thousands)")
考虑一个简单的数据集和图表:
Axis 会根据基础数据进行适当更新:
您显然需要适应您的特定数据,但希望这会为您指明正确的方向。
关于reporting-services - SSRS 2008 : how to change chart axis unit dynamically?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17221460/