reporting-services - 当两个折线图相遇时画一条垂直线 - SSRS

标签 reporting-services ssrs-2008

平台:SSRS-2008

如图所示,当两个折线图相交时,我需要添加一条垂直线。我该怎么做?

enter image description here

最佳答案

您要放置在图表上的绿线称为带状线。让它们正确显示可能非常棘手。首先要设置的是您的数据结构。

数据集结果不能像这样:

Time    Series    Value
12:00   A         20
12:00   B         30

它们必须看起来像这样:

Time   SeriesAValue    SeriesBValue
12:00  20              30

原因是如果您尝试使用类别组或系列组,带状线将不会显示。

接下来,您必须计算拦截点。在我的示例中,我添加了另一个数据集以返回拦截时间。

declare @test table(Time datetime, Value1 int, Value2 int)
INSERT INTO @test values('12:00', 32, 20), ('12:01', 30, 22), ('12:02', 24, 25), ('12:03', 28, 30), ('12:04', 29, 20)

SELECT MIN(Time)
FROM @test
WHERE Value1 <= Value2

要插入带状线,请在图表上选择水平轴。单击外观部分下的带状线属性。单击添加按钮。在 Interval 部分,您只想更改 IntervalOffset 表达式,将其他所有内容保留为 Auto。表达式将如下所示:

=DateDiff(DateInterval.Minute, Min(Fields!Time.Value, "DataSet1"), First(Fields!ID.Value, "DataSet2")) + 1

间隔必须计算为整数,+1 是因为它从 0 开始。结果将如下所示:

enter image description here

由于其中一行是设定值,因此您可以进一步简化它。

关于reporting-services - 当两个折线图相遇时画一条垂直线 - SSRS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18054647/

相关文章:

reporting-services - SSRS 中的 NaN 和无穷大值

reporting-services - SSRS。如何通过表达式隐藏空白/空列?

reporting-services - SSRS 2008 中分组值的总行数

sql-server - 如何获取 SSRS 中填充的当前季度的开始日期?

mysql - 如果至少满足一个条件,则排除查询中的唯一 ID

sql - SSRS 2016 native 双跳 Windows 身份验证

reporting-services - Tablix 中的 SSRS 停止组被拆分为多个打印页面

reporting-services - ReportViewer 上的报告页脚

reporting-services - SSRS 2012 中的 Excel 函数

通过 ODBC 从 SSRS 调用 MySQL 存储过程