Forum Discussion
Power BI Gantt Chartt Professional View
Good morning,
I am trying to make a Gantt chart summarizing 3 different timeframe types for several different categories. I cannot share the specific data points due to it being proprietary business values. The goal is two things; make this look professional, so that an executive would be able to screengrab it and use it in a leadership presentation. The second is that if possible I would like to make it so that all 3 colors fall on 1 line, instead of it being 3 lines per one value. Were in the food business, so instead of it saying Bread Contract Date Range, Bread Sourcing Date Range, Bread Cost Savings Date Range, it's just one row saying Bread, and the bar is seperated by colors defining what each color represents. I would like to use Inforiver+, but my company would prefer to exhaust all free options before paying for it. Does anyone know a better option without paying for an add-on?
This is what my current Gantt Chart looks like using Gantt Chart By MAQ Software. Any and all help would be appreciated:)
Hi benlevine200,
You can achieve a single-row Gantt-style timeline with multiple timeframes on the same line using a native Matrix visual (no paid visuals needed). Create a disconnected Date table for Month-Year columns and use a Matrix with Category on Rows and Month-Year on Columns. Use a blank display measure like -
Timeline Display = UNICHAR(8203)Then drive the colors using a measure that checks if each timeframe is active in the month -
Timeline Color = VAR CurrentMonthStart = MIN ( Calendar[Date] ) VAR CurrentMonthEnd = EOMONTH ( CurrentMonthStart, 0 ) VAR ContractActive = CALCULATE ( COUNTROWS ( 'Gantt Data' ), FILTER ( 'Gantt Data', 'Gantt Data'[Timeframe Type] = "Contract" && 'Gantt Data'[Start Date] <= CurrentMonthEnd && 'Gantt Data'[End Date] >= CurrentMonthStart ) ) VAR SourcingActive = CALCULATE ( COUNTROWS ( 'Gantt Data' ), FILTER ( 'Gantt Data', 'Gantt Data'[Timeframe Type] = "Sourcing" && 'Gantt Data'[Start Date] <= CurrentMonthEnd && 'Gantt Data'[End Date] >= CurrentMonthStart ) ) VAR SavingsActive = CALCULATE ( COUNTROWS ( 'Gantt Data' ), FILTER ( 'Gantt Data', 'Gantt Data'[Timeframe Type] = "Cost Savings" && 'Gantt Data'[Start Date] <= CurrentMonthEnd && 'Gantt Data'[End Date] >= CurrentMonthStart ) ) RETURN SWITCH ( TRUE (), -- All 3 overlap ContractActive > 0 && SourcingActive > 0 && SavingsActive > 0, "#595959", -- 2-way overlaps ContractActive > 0 && SourcingActive > 0, "#6FA8DC", ContractActive > 0 && SavingsActive > 0, "#7E57C2", SourcingActive > 0 && SavingsActive > 0, "#C76BAA", -- Single active timeframe ContractActive > 0, "#1E9BF0", SourcingActive > 0, "#E8743B", SavingsActive > 0, "#A020B0", -- No active range "#F2F2F2" )Apply this to Timeline Display via conditional formatting (background color) to create the timeline blocks. This results in a clean, executive-friendly visual with one row per category and combined timelines.
Sample Data Used -โโ๐ฏ Result -
Hierarchy (TimeFrame Type/Category)
If you try to keep all timeframe types as colors on a single line per category, the colors will overlap, which doesnโt look very clean or visually appealing. Instead, I would recommend using a hierarchy (Timeframe Type/Category) to separate them properly.
Below is how it looks when all timeframes are combined into a single line:
๐ก Helpful? Give a Kudos ๐ โ keep the community growing
โ Solved your issue? Mark as Solution โ๏ธ โ help others find it faster
Best regards,
Rupasree Achari | BI & Fabric Analytics Engineer
4 Replies
- Rupa01
Solution Sage
Hi benlevine200,
You can achieve a single-row Gantt-style timeline with multiple timeframes on the same line using a native Matrix visual (no paid visuals needed). Create a disconnected Date table for Month-Year columns and use a Matrix with Category on Rows and Month-Year on Columns. Use a blank display measure like -
Timeline Display = UNICHAR(8203)Then drive the colors using a measure that checks if each timeframe is active in the month -
Timeline Color = VAR CurrentMonthStart = MIN ( Calendar[Date] ) VAR CurrentMonthEnd = EOMONTH ( CurrentMonthStart, 0 ) VAR ContractActive = CALCULATE ( COUNTROWS ( 'Gantt Data' ), FILTER ( 'Gantt Data', 'Gantt Data'[Timeframe Type] = "Contract" && 'Gantt Data'[Start Date] <= CurrentMonthEnd && 'Gantt Data'[End Date] >= CurrentMonthStart ) ) VAR SourcingActive = CALCULATE ( COUNTROWS ( 'Gantt Data' ), FILTER ( 'Gantt Data', 'Gantt Data'[Timeframe Type] = "Sourcing" && 'Gantt Data'[Start Date] <= CurrentMonthEnd && 'Gantt Data'[End Date] >= CurrentMonthStart ) ) VAR SavingsActive = CALCULATE ( COUNTROWS ( 'Gantt Data' ), FILTER ( 'Gantt Data', 'Gantt Data'[Timeframe Type] = "Cost Savings" && 'Gantt Data'[Start Date] <= CurrentMonthEnd && 'Gantt Data'[End Date] >= CurrentMonthStart ) ) RETURN SWITCH ( TRUE (), -- All 3 overlap ContractActive > 0 && SourcingActive > 0 && SavingsActive > 0, "#595959", -- 2-way overlaps ContractActive > 0 && SourcingActive > 0, "#6FA8DC", ContractActive > 0 && SavingsActive > 0, "#7E57C2", SourcingActive > 0 && SavingsActive > 0, "#C76BAA", -- Single active timeframe ContractActive > 0, "#1E9BF0", SourcingActive > 0, "#E8743B", SavingsActive > 0, "#A020B0", -- No active range "#F2F2F2" )Apply this to Timeline Display via conditional formatting (background color) to create the timeline blocks. This results in a clean, executive-friendly visual with one row per category and combined timelines.
Sample Data Used -โโ๐ฏ Result -
Hierarchy (TimeFrame Type/Category)
If you try to keep all timeframe types as colors on a single line per category, the colors will overlap, which doesnโt look very clean or visually appealing. Instead, I would recommend using a hierarchy (Timeframe Type/Category) to separate them properly.
Below is how it looks when all timeframes are combined into a single line:
๐ก Helpful? Give a Kudos ๐ โ keep the community growing
โ Solved your issue? Mark as Solution โ๏ธ โ help others find it faster
Best regards,
Rupasree Achari | BI & Fabric Analytics Engineer - Kedar_Pande
Super User
MAQ can't collapse the three ranges onto one row, that's your limit. Best free option: Deneb.
In Deneb, plot all three date ranges as bar marks on a single y-value (Bread), each colored by type. One row per category, polished enough for a leadership deck.
If this answer helped, please click ๐ or Accept as Solution.
-Kedar
LinkedIn: https://www.linkedin.com/in/kedar-pande - v-karpurapud
Community Support
Hi benlevine200
Thank you for submitting your question to the Microsoft Fabric Community Forum, and thanks to Rupa01 and Kedar_Pande for sahring helpful suggestions.
Could you let us know if the suggested solution resolved your issue? If not, please share any additional details so we can assist further.
Best regards,
Community Support Team. - v-karpurapud
Community Support
Hi benlevine200
We were following up to check if you had the opportunity to review the information provided. Please feel free to contact us if you have any further questions.
Thank You.