Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.

Reply
Skoltn
Frequent Visitor

X-axis for comparing custom date ranges

Hi all,

 

For a client of mine I want to create a line graph which shows a custom date comparison. I have a date slicer coming from an unlinked table, which the user can use to choose a start- and enddate of the current period. Then, I automatically calculate the start- and enddate of the previous period. E.g. when they choose 07/10/2020 - 15/11/2020 as current period, the previous period automatically becomes 28/08/2020 - 06/10/2020. The user can choose whatever period they want, two days, a whole year, does not matter.

 

Calculating the sum of sales/clicks/views for these two periods is no big deal. I already have KPI visuals with them. However, I also want to create a line graph that compares the two periods. The problem is, that I cannot get my x-axis right. Does anybody have any ideas on how to create an x-axis that compares both periods?

 

What I'm trying to achieve is this:

Skoltn_0-1605540408299.png
My measures are: 

Current Period = CALCULATE([FunnelAmount], DATESBETWEEN(Facttable[_DateID], [CustStartCurrentPeriod], [CustEndCurrentPeriod]))
Previous Period = CALCULATE([FunnelAmount], DATESBETWEEN(Facttable[_DateID], [CustStartPreviousPeriod], [CustEndPreviousPeriod]))
 
The [FunnelAmount] measure is a simple SUM() and the [Cust...] measures represent dates.

 

1 ACCEPTED SOLUTION
amitchandak
Super User
Super User

@Skoltn , try a trailing period measure like this with date table

 

previous period =
var _min = minx(allselected('Date'), 'Date'[Date])
var _max = maxx(allselected('Date'), 'Date'[Date])
diff = (datediff(_min,_max,day)+1)*-1
return
Year behind Sales = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],diff,Day))

To get the best of the time intelligence function. Make sure you have a date calendar and it has been marked as the date in model view. Also, join it with the date column of your fact/s. Refer :radacad sqlbi My Video Series Appreciate your Kudos.

 

Share with Power BI Enthusiasts: Full Power BI Video (20 Hours) YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

View solution in original post

2 REPLIES 2
amitchandak
Super User
Super User

@Skoltn , try a trailing period measure like this with date table

 

previous period =
var _min = minx(allselected('Date'), 'Date'[Date])
var _max = maxx(allselected('Date'), 'Date'[Date])
diff = (datediff(_min,_max,day)+1)*-1
return
Year behind Sales = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],diff,Day))

To get the best of the time intelligence function. Make sure you have a date calendar and it has been marked as the date in model view. Also, join it with the date column of your fact/s. Refer :radacad sqlbi My Video Series Appreciate your Kudos.

 

Share with Power BI Enthusiasts: Full Power BI Video (20 Hours) YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

Thanks @amitchandak! That did the trick 🙂

Skoltn_0-1605617269623.png

 

Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.