Forum Discussion

sailochanar's avatar
sailochanar
Helper II
3 years ago

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

  • 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.

    • sailochanar's avatar
      sailochanar
      Helper 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.

      • JorgePinho's avatar
        JorgePinho
        Solution Sage

        Can you explain how you sorted using that column that I suggested? Or maybe share the report

  • Ray_Minds's avatar
    Ray_Minds
    Solution 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.
  • Anonymous's avatar
    Anonymous
    Not 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

     

  • 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.

  • Anonymous's avatar
    Anonymous
    Not 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.

  • 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.0

    2. 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 charts

    • Chart 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



  • 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.