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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

Custom Bin Labels

I'm using Groups to cluster my data in bins. I'd like to label the bins by the intervals they represent. My bin size is 30, so I'd like my graphs to have labels like the following:

 

0-29

30-59

60-89

90-119

120-149

150-170

180-210

 

Instead my labels are 0, 30, 60, 90,120, 150, and 180.

 

Is there a way to customize those labels, or a better way to make my graphs that use bins more visually intuitive?

2 ACCEPTED SOLUTIONS
v-yuezhe-msft
Employee
Employee

@Anonymous,

There is no built-in option to customize the bin labels. In your scenario, you can add a column using the DAX below, then drag the column into your graph.

Column = IF(Table[columnname (bins)]=0,"0-30", if(Table[columnname (bins)]=30,"30-90",IF(Table[columnname (bins)]=90,"90-990",IF(Table[columnname (bins)]=990,"above 990",IF(Table[columnname (bins)]=120,"120-149", IF(Table[columnname (bins)]=150,"150-170", IF(Table[columnname (bins)],"180-210")))))))


Regards,
Lydia

Community Support Team _ Lydia Zhang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

bkrahulec
New Member

@Anonymous,

 

I would use SWITCH() function instead of nested IFs as follows:

 

NewBinName = SWITCH(
                         [YourBinName]=0,"0-29"
                         ,[YourBinName]=30,"30-59"
                         ...
                         ,[YourBinName]=180,"180-210"
                         ,"Unknown")

 

However, you don't need to cluster your variable by in-built functionality into category first, when you have to rename it anyway. You can create new column with the category using the SWITCH() function by yourself as follows:

 

NewCategory = SWITCH(
                         TRUE(),
                         [BaseVariableName]<30,"0-29"
                         ,[BaseVariableName]<60,"30-59"
                         ...
                         ,[BaseVariableName]<211,"180-210"
                         ,"")

 

The SWITCH() function prioritizes the conditions according to their order.

View solution in original post

3 REPLIES 3
bkrahulec
New Member

@Anonymous,

 

I would use SWITCH() function instead of nested IFs as follows:

 

NewBinName = SWITCH(
                         [YourBinName]=0,"0-29"
                         ,[YourBinName]=30,"30-59"
                         ...
                         ,[YourBinName]=180,"180-210"
                         ,"Unknown")

 

However, you don't need to cluster your variable by in-built functionality into category first, when you have to rename it anyway. You can create new column with the category using the SWITCH() function by yourself as follows:

 

NewCategory = SWITCH(
                         TRUE(),
                         [BaseVariableName]<30,"0-29"
                         ,[BaseVariableName]<60,"30-59"
                         ...
                         ,[BaseVariableName]<211,"180-210"
                         ,"")

 

The SWITCH() function prioritizes the conditions according to their order.

Hi, 

Do you know whether there is any way to do this and leave the bins unsorted, i.e. that they don't order by size? 
I am looking at data for when actions are performed relative to their due dates, and  want bins grouped as '1 day overdue', '2-4 days overdue', '5-7 days overdue' etc.

I haven't been able to sort these according to days in any sensible matter. Do you, or anyone else here know how/if I can do this? 🙂 


v-yuezhe-msft
Employee
Employee

@Anonymous,

There is no built-in option to customize the bin labels. In your scenario, you can add a column using the DAX below, then drag the column into your graph.

Column = IF(Table[columnname (bins)]=0,"0-30", if(Table[columnname (bins)]=30,"30-90",IF(Table[columnname (bins)]=90,"90-990",IF(Table[columnname (bins)]=990,"above 990",IF(Table[columnname (bins)]=120,"120-149", IF(Table[columnname (bins)]=150,"150-170", IF(Table[columnname (bins)],"180-210")))))))


Regards,
Lydia

Community Support Team _ Lydia Zhang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.