How to calculate Percentage in each Series - Bar graph

I have created a card that displays total population of universities with respect to its ACT value. I want to create a card like below,

I have created a beast mode calculation to determine the percentage in each of its series. My beast mode calculation,

Case when `Public/Private`='Public' then sum(`Undergraduate Population`) when `Public/Private`='Private' then sum(`Undergraduate Population`) else 0 end / sum(`Undergraduate Population`)

This gave me a chart something like below,

I could not get the total by getting sum(`Undergraduate Population`) - it divides based on the University type - Public/Private

It would be fine helpful if someone could help me get the Total value - sum of population from both private and public. Thanks in advance !

Answers

  • Hi @Dharshini, in 'Chart Properties' -> 'Data Label Settings' -> 'Text' -> '%_PERCENT_OF_CATEGORY', you can show the data in each stacked bar as a % against the total along each for your ACT Lower values, showing the bars data exactly as your first image.

    Hope that helps.

  • Hi Amehdad, was able to get the result with '%_PERCENT_OF_CATEGORY' exactly the way I wanted.

    Found it helpful. Thanks !

  • GrantSmith
    GrantSmith Indiana 🔴

    Hi @Dharshini another alternative is window functions which allow you to aggregate across a partition / subset of your entire dataset. You need to have your CSM turn it on in your instance to utilize them in beast modes.

    SUM(undergraduate_population) / sum(sum(undergraduate_population)) over (partition by act_score)

    I would go with @amehdad21 ‘s solution as it’s the simpler option in your case but wanted to make you aware of another solution which might be beneficial in the future for you


    Sorry for the bad formatting I’m on mobile and vacation :)