如何在折线图上用功率Bi相互重叠显示当前年,去年和2年之前的销售数据?

时间:2019-04-04 09:42:11

标签: powerbi dax linechart powerbi-desktop

我要求显示2019年(实际),上一年2018年和2年前2017年的销售数据,以在一个折线图中显示。一年中的每个星期天都会生成销售数据,一年总共52周

注意:数据很敏感,因此无法在论坛上共享

报告要求,两个下拉列表:

  1. 市场选择。
  2. 日期选择-该日期将是一周中的每个星期天

折线图:

x轴显示日期,y轴显示市场。现在,当选择任何星期下拉列表时(例如:2019年3月31日,则折线图中应该有三个趋势线)

  1. 第一条趋势线应显示2019年4月至2020年3月的详细信息
  2. 第二趋势线应显示2018年4月至2019年3月的详细信息
  3. 第三条趋势线应显示从2017年4月到2018年3月的详细信息

下一个挑战是,我无法实现上一年和2年前的第二和第三趋势线,它们应该相互重叠,因此,在一个折线图中共有三个趋势线。

我面临的另一个挑战是日期的跨年不连续(例如:2018年1月星期日为7,2019年1月星期日为6)。

请让我知道是否需要其他信息。

下图是我希望折线图看起来的样子。我希望显示日期而不是月份:

required output

我编写了DAX,可在选择下拉菜单时帮助显示1年日期范围。

我希望折线图显示当前年度,上一年和2年前的总计三个趋势线。

我尝试使用年份函数来获取上一年的数据,但是由于日期不同,它在我当前的趋势线上不重叠。

1 个答案:

答案 0 :(得分:0)

是否必须在x轴上具有日期分辨率,否则,您可以使用ISO-weeknumber作为x轴,并使用年份(或FY)作为折线图的解释。

在您的日历表中添加此计算列:

ISOweek = WEEKNUM([date]; 21)

如果需要日期解析,则可以添加两个计算列; date + 1year和date + 2years。 如果星期几是重要匹配项,则添加364天;如果日期是重要匹配项,则添加365天。

将日历中的两个新关系添加到数据表中,其中一个到日期+1年,另一个到日期+2年。这些将变为被动(虚线)。

然后使用以下模式:

A_measure =
MAXX(
    DISTINCT(Calendar);
    CALCULATE(
        SUM(Table[Data]);
        USERELATIONSHIP(Table[date+1year]; Calendar[Date])
        // this uses the passive relationship instead of the active
    )
)

然后以相同的方式进行第二次测量,只是针对第三种关系。

在折线图中,将Calendar [Date]作为x轴,然后将覆盖所有三年。