如何在 SQL Server Report Builder 中向堆积条形图添加自定义指标线

How to add a custom indicator line to stacked bar chart in SQL Server Report Builder

我有一个堆叠条形图,显示按任务类型堆叠的每个条形的工作小时数总和。我希望添加一个代表 "baseline number of hours worked" 的指示条(在模拟屏幕截图中显示为绿色垂直线)。我可以从 data-set 中获取此数字的值,但无法弄清楚如何将此行添加到图表中。

我尝试了各种仪表和指示器设置,但未能找到解决方案。任何帮助表示赞赏。谢谢。

您也许可以使用带状线。不利的一面是它们出现在条形后面,因此您可能必须使条形稍微窄一些,以便您可以看到间隙中的线。

我使用以下查询为我的数据集构建了一个简单示例

DECLARE @t TABLE(g varchar(10), n varchar(10), x int)

    INSERT INTO @t VALUES
    ('X', 'A', 50),
    ('X', 'B', 75),
    ('Y', 'C', 100),
    ('X', 'D', 50),
    ('Y', 'E', 25)

    SELECT *, AVG(X) OVER() AS avg FROM @t

然后我添加了一个堆积条形图,如下所示

接下来您需要确保属性 windows 可见,然后单击水平轴。在属性 windows 中,您将看到 StripLines 属性,如下所示。

添加一条新的带状线并设置如下属性,表达式只是我数据集中的 avg 字段(我也为带状线添加了一个标题)。你可以看到我用粗体编辑的属性。

最后,当我们 运行 我们得到这个报告时。

它并不完美,但希望它能解决您的问题。

我找到了一个沿水平轴使用 "minor tick marks" 的解决方案。

在横轴属性->"Minor Tick Marks"中,在自定义区间中添加包含"base line hours"值的表达式,并将位置格式化为"Inside"。我确实必须使用 "Length" 属性 来确保该线不会高于图表本身。

请注意,我使用 "Major Tick Marks" 用于带有水平轴标签的小外部标记,因此 "minor tick marks" 选项在此之前设置为 "Hide"。

enter image description here

结果如下: enter image description here

希望这对某人有所帮助。