Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowData Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more
Hello,
I have created my own R visuals using ggplot2, which automatically chooses a colour scheme for my legend. However, when I use the slicer to filter the data, the colours are reassigned, making it visually a bit disorienting to the user.
For example, before using the slicer:
A - Red
B - Green
C - Blue
D - Orange
After using the slicer to select C and 😧
C - Red
B - Green
Is there a way to make it such that after selecting C and D in the slicer, this is what I get:
C - Blue
D - Orange
Thank you!
Based on my test, you may use scale_manual.
Hello Sam,
Thank you for your suggestion! I realise that I was not very clear in my question, sorry about that!
I am trying to create a Power BI template that is as generic as possible - the number of legend entries and the names of the legend entries will change each time, so I cannot hard code something like:
dd.col <- c("#FF0000FF", "#FF8B00FF", "#E8FF00FF", "#5DFF00FF")
names(dd.col) <- c("A", "B", "C', "D")
and call "scale_fill_manual("Legend", values = dd.col)"
in ggplot
I have tried to create a new colour palette,
# Create color vector
dd.col <- rainbow(length(unique(dataset$LegendEntries)))
names(dd.col) <- unique(dataset$LegendEntries)
Like this, but the colours reset when I choose a subset of information using the Slicer in Power BI.
Would you know of a way to work around this? Thank you!
Regards,
Fel
Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.
Check out the May 2026 Power BI update to learn about new features.