Forum Discussion
Average by group ignoring Sub-Group
- 1 year ago
Hi uk-roberto92
You can use a dax measure :Group average =
VAR selectedGroup = SELECTEDVALUE('Table'[Group])
VAR AVG_ =
CALCULATE(
AVERAGEX(
SUMMARIZE('Table', 'Table'[Group], "Sum_", AVERAGE('Table'[Value])),
[Sum_]
),
ALLSELECTED('Table'[Sub-Group]),
KEEPFILTERS('Table'[Group] = selectedGroup)
)
RETURN
AVG_Important Notes:
-
Tooltip Dependency for Sorting
To sort the bars according to the group, you need to add theGroupfield into the Tooltips section — as shown in the image.
This ensures the "Group average" line aligns with each bar correctly by maintaining group context.
2. Granularity Mismatch – Line May Disappear
Due to the granularity difference between theSub-Group(X-axis) andGroup average(aggregated by Group), the line won’t appear for the first bar unless you structure your visual hierarchically — like in the second image where the hierarchy is visualized.3.
Visual Misinterpretation – Lines Suggest Trends
A line chart (or combo chart with a line) is typically interpreted by users as a trend over time.
Since this visual is not time-based, to avoid misleading your users, I recommend replacing the line with just markers, like in the third image.
This keeps the message clear — you're showing averages per group, not a time-based trend.Alternatively, you can:
-
Show a single visual with the overall average,
-
And create a second chart showing the delta from group average.
The pbix is attached
If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly
-
Hi uk-roberto92,
As we haven’t heard back from you, we would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.
If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.
Regards,
Vinay Pabbu