Расчетные столбцы как ось и значение - PullRequest
0 голосов
/ 14 февраля 2020

У меня есть куча рассчитанных столбцов DAX, которые я хочу показать в виде визуала. Если я использую нормальную гистограмму, я получаю следующее изображение, Barchart 1, где, потому что у меня нет никаких полей в поле оси. Названия каждого из вычисляемых столбцов - это то, что я хочу, чтобы ось х была похожа на ту, что есть на воронкообразной диаграмме ниже.

Barchart 1

В воронкообразной диаграмме требуется только заполнить поле значения, и создается следующее изображение, которое является тем, что я хочу, но оно должно быть вертикальным, аналогично последнему образ.

Barchart 2

Это последнее изображение, Barchart 3, это то, чего я хочу достичь с помощью своих вычисленных столбцов, но до сих пор мне не повезло в этом разобраться. Это визуальное изображение было создано с использованием другого файла, который не имеет отношения к проекту, над которым я сейчас работаю. Я считаю, что если бы я мог отменить вычисление столбцов, то это привело бы к созданию графика, который я искал, но я не могу понять, как отключить столбцы, созданные в DAX. Есть ли способ отключить столбцы DAX или визуальный элемент на рынке, чтобы выполнить то, что я пытаюсь сделать? Или мне нужно создать свой собственный визуальный элемент для выполнения sh этого? Другие идеи / мысли?

Barchart 3

Пример файла данных

Ответы [ 2 ]

0 голосов
/ 15 февраля 2020

Я бы порекомендовал создать вычисляемую таблицу, у которой Month нет разворота, так что вам нужно поместить только одну серию на гистограмму.

Например, вы можете написать вычисленную таблицу, например, так: только 7 столбцов:

CalcTable = 
VAR ThisYear = YEAR ( MAX ( Sheet4[Start] ) )
RETURN
    ADDCOLUMNS (
        CROSSJOIN (
            SELECTCOLUMNS (
                Sheet4,
                "Project", Sheet4[Project],
                "Start", Sheet4[Start],
                "End", Sheet4[End],
                "Cost", Sheet4[Cost]
            ),
            ADDCOLUMNS (
                GENERATESERIES ( 1, 12 ),
                "Month", FORMAT ( DATE ( ThisYear, [Value], 1 ), "MMMM YYYY" )
            )
        ),
        "MonthCost", IF (
            [Value] >= MONTH ( [Start] ) && [Value] <= MONTH ( [End] ),
            DIVIDE ( [Cost], DATEDIFF ( [Start], [End], MONTH ) + 1 ),
            0
        )
    )

Эта таблица выглядит следующим образом:

Calculated Table

И позволяет создавать гистограмму с помощью Month по оси и сумма MonthCost для значений.

Bar Chart

0 голосов
/ 15 февраля 2020

Я закончил тем, что нашел решение для этого. Это не поддерживает отношения, но это работает.

Totals Table = 
UNION(
    SUMMARIZE(Sheet4,"Cost",SUM(Sheet4[January 2020]),"Month","January 2020"),
    SUMMARIZE(Sheet4, "Cost", SUM(Sheet4[February 2020]), "Month", "February 2020"),
    SUMMARIZE(Sheet4,"Cost",SUM(Sheet4[March 2020]),"Month","March 2020"),
    SUMMARIZE(Sheet4, "Cost", SUM(Sheet4[April 2020]), "Month", "April 2020"),
    SUMMARIZE(Sheet4,"Cost",SUM(Sheet4[May 2020]),"Month","May 2020"),
    SUMMARIZE(Sheet4, "Cost", SUM(Sheet4[June 2020]), "Month", "June 2020"),
    SUMMARIZE(Sheet4,"Cost",SUM(Sheet4[July 2020]),"Month","July 2020"),
    SUMMARIZE(Sheet4, "Cost", SUM(Sheet4[August 2020]), "Month", "August 2020"),
    SUMMARIZE(Sheet4,"Cost",SUM(Sheet4[September 2020]),"Month","September 2020"),
    SUMMARIZE(Sheet4, "Cost", SUM(Sheet4[October 2020]), "Month", "October 2020"),
    SUMMARIZE(Sheet4,"Cost",SUM(Sheet4[November 2020]),"Month","November 2020"),
    SUMMARIZE(Sheet4, "Cost", SUM(Sheet4[December 2020]), "Month", "December 2020"))
...