单线和多个图标的多种颜色折线图

Line Chart with multiple colors for single line and multiple icons

需要按国家/地区->客户->机器类型->机器模型->部件筛选的如下折线图。

图表表示 Y 轴和 X 轴随时间(年-月-日)消耗的 Material(吨)机器。

我的数据来自存储过去 3 个月和接下来 365 天的价值的 ML 模型。

  1. 如何在同一行中用不同颜色显示实际值和预测值?我不能用两条线来表示这个。

  2. 如何在同一行显示多个(大约100个)图标(下图中用X表示)来表示零件的另一个字段值维护日期。

如果数据集正确,您可以使用单个数据集和一行代码轻松完成此操作。

我使用以下方法模拟了一小部分数据样本...

这假设有两个表,一个有 material 使用,另一个有维护天数

DECLARE @t TABLE(DateStamp date, Amount int)

INSERT INTO @t VALUES
    ('2021-01-01', 10),
    ('2021-01-02', 11),
    ('2021-01-03', 12),
    ('2021-01-04', 14),
    ('2021-01-05', 16),
    ('2021-01-06', 18),
    ('2021-01-07', 20),
    ('2021-01-08', 21),
    ('2021-01-09', 22),
    ('2021-01-10', 23),
    ('2021-01-11', 24),
    ('2021-01-12', 25),
    ('2021-01-13', 26)

DECLARE @m TABLE(DateStamp date)

INSERT INTO @m VALUES
    ('2021-01-01'),
    ('2021-01-02'),
    ('2021-01-06'),
    ('2021-01-07')


SELECT t.*, CASE WHEN m.DateStamp IS NULL THEN 0 ELSE 1 END as Maintenance
    FROM @t t 
        LEFT JOIN @m m on t.DateStamp = m.DateStamp
    

使用它作为我的数据集查询,我得到以下返回数据。

现在我所做的就是添加一个折线图,其中金额为值,日期戳为类别组。

然后我单击系列线并更改以下属性...

颜色

=IIF(Fields!DateStamp.Value <= Today(), "Blue", "Red")

标记类型

=IIF(Fields!Maintenance.Value=1, "Diamond", Nothing)

...最后将标记大小设置为 15pt 以在本示例中清楚显示。

这给了我以下输出