首页 > 解决方案 > 如何在 Power BI 中按自定义日期层次结构按时间顺序对图表进行排序

问题描述

我有一个星型模式模型。我的维度表之一是日期表。它是在 Power BI 之外构建的,因为它具有我们的会计日历的列,这是不寻常的(4-5-4、52/53 日历)并且不会从 1 月 1 日开始。(也就是说,您永远不想生成Power BI 中的这个日历。)它的粒度是天,它的 3 列包括 [Date] (PK)(例如,'2019-11-9')、[Fiscal Year - Period Name](例如,'2019-2020 - 11 月',即我们日历中的第 8 期)和 [会计年度 - 期号](整数,例如 201920208)。我的事实表具有从 2019 年 11 月到 2020 年 5 月的日期键(按日期计算)。事实和日期维度表在 [Date] 键上连接。

我想通过由 [会计年度 - 期间名称] \ [日期] 组成的可钻层次结构创建某种度量的折线图。因此,我创建了所需的字段层次结构(在“字段”窗格中)。默认情况下,[Fiscal Year - Period Name] 将按字母顺序排序(因为它是一个字符串),这不是我想要的排序(显然)。我希望它按时间顺序排序。因此,我已按相应的数字列对日期维度表进行了排序,即[会计年度 - 期间编号]。(它不能按 [Date] 排序,因为每个 [Fiscal Year - Period Name] 值有很多 [Date] 值。)

当我创建一个轴为 [Fiscal Year - Period Name] (不是层次结构)的折线图时,折线图中的排序是按时间顺序排列的,这是预期的(因为我对日期维度表进行了排序)。当我创建一个轴仅为 [Date] 的折线图(不是层次结构)时,折线图中的排序是按时间顺序排列的,这是意料之中的(不是因为我对日期维度表进行了排序,而是因为 [Date] 是日期数据类型)。

但是,当我创建一个带有我定义的层次结构轴的折线图时,它没有按预期排序。它在 [Fiscal Year - Period Name] 级别错误地按字母顺序对折线图进行了排序,就好像它忽略了我应该解决此排序问题的日期维度表排序一样。请注意,当我深入到 [Date] 级别时,排序是按时间顺序排列的,这是理想的。

如何用我的层次结构解决这个排序问题?

标签: powerbi

解决方案


在您的模型中,选择 [Fiscal Year - Period Name] 列并转到Modeling功能区中的选项卡,单击Sort by Column并选择您的 [Date] 列(或您要排序的任何列)。

您可以Sort by Column本文中了解更多信息。


推荐阅读