Forum Discussion
Power BI
Hey Mates ....
I have been trying to build a report where I'm stucked with a issue like month names are not in order ,even after sorting and tried many ways to sort ,by transforming data,adding new col,slicing blah blah ...still didnt yet solved.
Kindly suggest the solution.
Observe tht image where in X-axis month names are not in order .Thats the Issue ,I'm facing.
Thanks ..!
9 Replies
- JorgePinhoSolution Sage
Hello sailochanar! Do you have a calendar table? If so my suggestion would be to have a numeric column of month year where, for example, dec23 would be 1223 and june23 0623. Then you can order the original column based on the numeric one.
- sailochanarHelper II
Nope I just have month attribute ,Yeah I even created that as u said for Dec23-1223..But still the order is not sorted.(Splitting column ,conditions...) still not solved.
- JorgePinhoSolution Sage
Can you explain how you sorted using that column that I suggested? Or maybe share the report
- Ray_MindsSolution Supplier
You can follow below steps:
1)you can add a new column in Power Query Editor or using DAX to represent the monthnumber..
MonthNumber =
SWITCH(
[Month],
"Jan'23", 1,
"Feb'23", 2,
"Mar'23", 3,
"Apr'23", 4,
"May'23", 5,
"Jun'23", 6,
"Jul'23", 7,
"Aug'23", 8,
"Sep'23", 9,
"Oct'23", 10,
"Nov'23", 11,
"Dec'23", 12,
BLANK()
)- Sort the data by the MonthNumber column.
- AnonymousNot applicable
Hi sailochanar ,
By using switch function u can create new column and add these new field to the existing filed then apply sorting then it will return.
FYR-
SWITCH(financials[Month Name],"April","04-April","June","06-june")Thanks & Regards,
Madhan Reddy
- sailochanarHelper II
I splitted the month column which is filled with Jan'23,Feb'23....so on ,and added another column with Month_number and merged all three. still even after sorting with mnth number also it is not getting sorted . Please suggest a simple way if possible.
- AnonymousNot applicable
Create a column format in Year-Month (format(your date column),"YYYY-MMM") , like 2024-07 and sort by ascending order.
Or create another column (let sy column A) with your desired order, then sort your original column by column A. - Olufemi7Super User
Hi sailochanar,
The month names are sorting alphabetically because Power BI is treating them as text (like “Jan23”, “Feb23”).
You need to give Power BI a real date to sort by.Try this simple fix:
1.
MonthText BuyerSellerRatio Dec22 2.0 Jan23 2.3 Feb23 2.5 Mar23 1.8 Apr23 1.02. Add a real date column
MonthStartDate = DATE( 2000 + RIGHT('Table1'[MonthText], 2), SWITCH( LEFT('Table1'[MonthText], 3), "Jan",1,"Feb",2,"Mar",3,"Apr",4,"May",5,"Jun",6, "Jul",7,"Aug",8,"Sep",9,"Oct",10,"Nov",11,"Dec",12 ), 1 )3. Create a Date table
DateTable = ADDCOLUMNS( CALENDAR(MIN('Table1'[MonthStartDate]), MAX('Table1'[MonthStartDate])), "MonthYear", FORMAT([Date], "mmm yyyy"), "MonthNum", MONTH([Date]), "YearNum", YEAR([Date]), "SortOrder", YEAR([Date]) * 100 + MONTH([Date]) )4. Build the relationship
Link Table1[MonthStartDate] → DateTable[Date]
(Many-to-one, single direction)5. Sort your MonthYear column
In the DateTable, sort MonthYear by SortOrder.
6. Test with two chartsChart 1 (Before fix)
X-axis → Table1[MonthText]
Y-axis → Table1[BuyerSellerRatio]
→ Months show alphabetically (wrong).Chart 2 (After fix)
X-axis → DateTable[MonthYear]
Y-axis → Table1[BuyerSellerRatio]
→ Months show correctly: Dec22 → Jan23 → Feb23 → Mar23 → Apr23.
This approach works in both Power BI Desktop and Power BI Service.Manage RelationshipPower BI Month Names Fix
- RuchikaSoniAdvocate I
You can create a new column and prefix month names with 1. for January, 2. for February, etc. This will allow you to sort them in order.