首页 > 解决方案 > 带有百分比度量的帕累托图 Power BI

问题描述

我正在创建的仪表板有问题。

我需要制作一个帕累托图,并且我在 Internet 上找到了很多关于如何在 Power BI 中制作它的教程,但是,我需要使用一个百分比来衡量,这就是我卡住的地方。

这是我桌子的一部分:

数据库

我做了一个测量,是百分比的Não_Recebido_Dinâmico百分比Fat_Liq1。措施是:

% Inadimplência_Dinâmico = DIVIDE(SUM('Mapa_de_Faturamento (2)'[Não_Recebido_Dinâmico]);
                                  SUM('Mapa_de_Faturamento (2)'[Fat_Liq.1])) + 0

所以我需要Cursos用这个衡量标准制作一个前 10 名的帕累托图。当我在互联网上应用帕累托图的方法时,它不起作用,因为它们使用度量的总和来计算累积百分比。

例如,这些是该Cursos措施的前 10 名% Inadimplência_Dinâmico。我认为要使帕累托图正常工作,总计和累积应该是度量的总和,但这不是 Power BI 中发生的情况,因为它一直将其视为百分比。

桌子

我尝试对计算列进行相同的度量,但它也不起作用,因为在这种情况下,它总结了所有行的百分比。

我不熟悉 Power BI 的 DAX 功能,所以我需要一些帮助。

这是我在 Power BI 中想要的,但在 Excel 中制作:

我想要的例子

谢谢你们!

标签: powerbidaxmeasurepowerbi-desktoppareto-chart

解决方案


首先,让我们为排名创建一个计算列(名称缩写为易读性):

Ranking = RANKX(
              SUMMARIZE('Mapa_'; 'Mapa_'[Curso]);
              CALCULATE(
                  DIVIDE(SUM('Mapa_'[Não_]); SUM('Mapa_'[Fat_]));
                  ALL('Mapa_'); 
                  'Mapa_'[Curso] = EARLIER('Mapa_'[Curso])))

现在我们可以创建一个累积度量:

Accum = DIVIDE(
            CALCULATE(
                SUM('Mapa_'[Não_]);
                FILTER(ALLSELECTED('Mapa_');
                    'Mapa_'[Ranking] <= MAX('Mapa_'[Ranking])));
            SUM('Mapa_'[Fat_]))

Curso现在,您可以在共享轴、% Inadimplência_Dinâmico列值和Accum线值上创建折线图和条形图。

请注意,在您应用适当的过滤之前,这将包含所有光标。为此,请转到可视级别过滤器(或页面级别或报告级别)并选择前 N 个过滤Curso。您希望使用Ranking与按值选项一样的列显示底部 10 项。

过滤

度量的ALLSELECTED一部分Accum将确保您只包括您想要的前 10 行,而不是所有行。


推荐阅读