cancel
Showing results for
Did you mean:
Frequent Visitor

## Donut Chart Cross Filtering- Showing percentage of category in donut chart based on another filter

I have two charts. One Column and another Donut Chart.

Two Table is like this: Country Performance Table-

 Country Export Performance United States \$2,326,723,898.20 Germany \$1,632,408,827.56 Spain \$870,604,150.10 France \$665,835,911.01 INDIA \$567,799,161.71 Netherlands \$497,927,986.32 Italy \$402,789,387.98 Japan \$395,435,907.99 Canada \$379,253,598.91 Poland \$327,573,879.39 Denmark \$263,984,534.89 Australia \$253,274,283.61 Belgium \$224,211,077.31 China \$150,437,790.15

And Continent Table:

 Region-Continent Country North America United States Europe Germany Europe Spain Europe France Asia INDIA Europe Netherlands Europe Italy Asia Japan North America Canada Europe Poland Europe Denmark Ocenia Australia Europe Belgium Asia United Arab Emirates Europe Sweden Asia China Europe Turkey North America Mexico Europe Czech Republic

There is direct relationship between country column of two tables.

What I need is- when I will filter country by the column , the donut chart will show percentage of that country's performance against relevant continent's performance.

For Example- if I filter United States in Column Chart, the donut chart should show percentage of U.S's performance against North America Continent's Performance. Currently it is showing like this when I filtered-

Is it possible?? I have tried Drill Down. But didn't work..

1 ACCEPTED SOLUTION
Community Support

Hi @rifat_tib ,

(1) Create a new measure

``````percentage =
VAR _VALUE =
SUM ( 'Country Performance'[Export Performance] )
VAR _CONTINENT =
CALCULATE (
VALUES ( Continent[Region-Continent] ),
Continent[Country] = MAX ( 'Country Performance'[Country] )
)
VAR _TABLE =
CALCULATETABLE (
VALUES ( 'Continent'[Country] ),
FILTER ( ALL ( Continent ), Continent[Region-Continent] = _CONTINENT )
)
VAR _VALUE2 =
CALCULATE (
SUM ( 'Country Performance'[Export Performance] ),
FILTER (
ALL ( 'Country Performance' ),
'Country Performance'[Country] IN _TABLE
)
)
RETURN
DIVIDE ( _VALUE, _VALUE2, 0 )``````

(2)Final output

Best Regards,

Gallen Luo

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

2 REPLIES 2
Frequent Visitor

Thanks. Perfectly solves my problem! 🙂

Community Support

Hi @rifat_tib ,

(1) Create a new measure

``````percentage =
VAR _VALUE =
SUM ( 'Country Performance'[Export Performance] )
VAR _CONTINENT =
CALCULATE (
VALUES ( Continent[Region-Continent] ),
Continent[Country] = MAX ( 'Country Performance'[Country] )
)
VAR _TABLE =
CALCULATETABLE (
VALUES ( 'Continent'[Country] ),
FILTER ( ALL ( Continent ), Continent[Region-Continent] = _CONTINENT )
)
VAR _VALUE2 =
CALCULATE (
SUM ( 'Country Performance'[Export Performance] ),
FILTER (
ALL ( 'Country Performance' ),
'Country Performance'[Country] IN _TABLE
)
)
RETURN
DIVIDE ( _VALUE, _VALUE2, 0 )``````

(2)Final output

Best Regards,

Gallen Luo

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Announcements

#### 2023 Release Wave 1 Plans

Power BI release plans for 2023 release wave 1 describes all new features releasing from April 2023 through September 2023.

#### Global Power BI Training

Make sure you register today for the Power BI Summit 2023. Don't miss all of the great sessions and speakers!

#### Business Application LATAM Summit 2023

Join the biggest FREE Business Applications Event in LATAM this February.

#### Global Power Platform Bootcamp

In this bootcamp we will deep-dive into Microsoft’s Power Platform stack with hands-on sessions and labs, delivered to you by experts and community leaders.

Top Solution Authors
Top Kudoed Authors