如何从切片器上选择的年份开始在面积图中显示数据并在 Power BI 中获取所有后续年份

How to display data in area chart starting from the year chosen on a slicer and get all following years in Power BI

当在切片器上选择一个年份时,我希望面积图显示从所选年份到最后(我的数据源中的所有年份)的所有数据。 但它只是显示我在切片机上选择的一年的数据。 所以我有这个:

但我希望它看起来像这样:无论我在切片器中选择什么年份 - 图表都会显示从 2014 年开始到 2017 年的所有数据。

我只是在遵循一个 PowerBI 模板示例,似乎可以做到这一点:

https://app.powerbi.com/view?r=eyJrIjoiMjc2NzExODItMjNhYy00ZWMxLWI2NGItYjFiNWMzYzUzMzhlIiwidCI6IjU3NGMzZTU2LTQ5MjQtNDAwNC1hZDFhLWQ4NDI3ZTdkYjI0MSIsImMiOjZ9

我建议考虑新的数字范围切片器。 您可以将其设置为 "Greater than or equal to"。用户可以通过输入数字或拖动切片器 select 然后是范围内的初始年份。

您需要在 "Preview features" 下的“选项”中的 Power Bi Desktop 中启用此功能。

在文档中有很好的介绍https://powerbi.microsoft.com/en-us/documentation/powerbi-desktop-slicer-numeric-range/

它可能是这样的:

这是可行的,但需要一些技巧和额外措施。

TL;DR: 您看到的切片器实际上用作 value picker,而不是过滤器。一个 extra measure based on the value 被创建并用作 visual level filter 视觉来完成这个技巧。


如果您想继续学习,可以下载 .pbix file from this Microsoft edX course about Power BI

首先,基于现有 Date table 创建一个新的 table,只有不同的年份:

Year = DISTINCT('Date'[Year])


然后,使用新创建的 Year table 中的 Year 列创建一个切片器(NOT Date table).


如下创建度量(用作标志):

Flag = 
VAR YearSelected = FIRSTNONBLANK(VALUES('Year'[Year]), 0)
RETURN
IF(VALUES('Date'[Year]) >= YearSelected, 1, 0)

所以基本上它从年份切片器中获取年份并将其与日期 table 中的年份值进行比较以查看它是否大于或等于它。


图表是使用 Date table 中的 Year 列创建的(NOT Year table),以及其他必要的措施。 Flag 添加到 Visual level filters 并设置为 1。

因此 Flag 值将根据在年份切片器中选择的值而变化,并用作显示图表的实际过滤器。


结果:


编辑: 更多用例

@Oleg 尝试思考如何进一步应用 Flag 概念。例如,如果你想要另一个图表显示与切片器相同年份的数据,你可以设置另一个标志名为SameYearFlag,并且只将值比较的部分更改为=。将它添加到图表 Visual level filter,它将只显示同一年的数据。是的,推而广之,这意味着您可以使用其他标志,例如 LastYearFlagNextYearFlag 等,只要它对您有意义即可。用例由您决定。

LastYearFlag = 
VAR YearSelected = FIRSTNONBLANK(VALUES('Year'[Year]), 0)
RETURN
IF(YearSelected - VALUES('Date'[Year]) = 1, 1, 0)

NextYearFlag = 
VAR YearSelected = FIRSTNONBLANK(VALUES('Year'[Year]), 0)
RETURN
IF(VALUES('Date'[Year]) - YearSelected = 1, 1, 0)

SameYearFlag = 
VAR YearSelected = FIRSTNONBLANK(VALUES('Year'[Year]), 0)
RETURN
IF(VALUES('Date'[Year]) = YearSelected, 1, 0)

示例:

通过只有一年的切片器,我可以通过对图表应用不同的标志来获得包含同一年、去年、明年和以后所有年份的数据的图表。

如前所述,由您来想出更多有趣的用例!