我对 Power BI 非常陌生,我想在 power bi 中创建一个图块,它会返回总用户数逐年不同的情况。有一个切片器可以选择您所需的年份(即,如果选择 2023 年,它将计算 2022 年至 2023 年之间的同比百分比
但是,当在切片器中选择 2024 年时,它似乎是将今年迄今为止经过的时间与整个 2023 年进行比较,而不是与 2023 年的同一时间段进行比较。当我返回当前年份的用户、上一年的用户时,表格上的年份和月份我可以看到每个月的计算都是正确的,但是该图块返回的是全年比较而不是同一时间段。我计算变量如下:
Users CY =
VAR MaxDate = MAX('Calendar Table'[Date])
RETURN
IF(
SELECTEDVALUE('Calendar Table'[Calendar Year]) = YEAR(MaxDate),
CALCULATE(
COUNT(Table[user_id]),
FILTER(
'Calendar Table',
'Calendar Table'[Date] <= MaxDate &&
'Calendar Table'[Date] >= DATE(YEAR(MaxDate), 1, 1)
)
),
CALCULATE(
COUNT(Table[user_id]),
FILTER(
'Calendar Table',
'Calendar Table'[Calendar Year] = YEAR(MaxDate)
)
)
)
Users PY =
CALCULATE(
COUNT(Table[user_id]),
DATEADD('Calendar Table'[Date], -1, YEAR)
)
Users YoY% =
VAR Users_CY = [Users CY]
VAR Users_PY = [Users PY]
RETURN
IF(
ISBLANK(Users_PY) || Users_CY = 0,
BLANK(),
(Users_CY - Users_PY) / Users_PY
)
我也尝试过使用 SAMEPERIODLASTYEAR 但仍然得到相同的结果
我希望它能够动态更新(即)数据每月刷新一次,这样当 2024 年 3 月的数据添加到表中时,它会自动更新计算
您获得全年比较的原因是,当您在数据切片器中选择 2024 年时,日期表会过滤到 2024 年全部(365 天)。因此,当 SAMEPERIODLASTYEAR 求值时,它将与 2023 年全年进行比较。也许,您可以不使用日期切片器,而是将年份或月份放在 x 轴上,如下所示。
您还可以添加字段参数,让用户选择是否需要月/年/或季度来分割数据。
最后,要删除表格/图表上的 2024 年全年,您可以在<= current month. This can be challenging if you don't have a date table or offset columns. I wrote about date calendars and offsets 此处添加月份的视觉过滤器。