The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredCompete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.
Hi, I need help with using a shape map to display colors like the map below.
I have a table with all states and the respective sales regions, some having two or three regions (for example, California and Oregon). However, I get stuck trying to get it to fill a state with multiple colors for more than one region. Any idea how to do this without creating a custom map?
Here's what my current map looks like on my report divided into regions:
Solved! Go to Solution.
Hey @jabueg,
Looking at your maps, I can see you want to show states with multiple regions using split colors (like the stripes/patterns in your first image), but Power BI's native shape map visual doesn't support this directly.
Here are a few practical workarounds:
Option 1: Custom Visual
Option 2: Data Model Approach
Option 3: Hybrid Solution
Option 4: Shape Map Alternatives
The easiest immediate fix is Option 2 - adjust your data model to handle the multi-region states in tooltips while keeping the visual clean. For true multi-color fills like your reference image, you'll likely need a custom visual solution.
Did it work? ✔ Give a Kudo • Mark as Solution – help others too!
Best Regards,
Jainesh Poojara | Power BI Developer
Hi @jabueg
It is a limitation of Power BI’s default shape map to fill a single state (like California or Oregon) with multiple colors for different regions.Power BI’s shape map only allows one color per shape, meaning each state can only be assigned a single value/color.Unfortunately, you can't natively fill one state with multiple colors in the same map without using a custom TopoJSON file where each region of a state is represented as a separate shape. However, there is a workaround using DAX: instead of showing multiple colors, you can show that a state belongs to multiple regions by grouping regions into one text label.
Combined Region = CONCATENATEX(VALUES('YourTable'[Region]), 'YourTable'[Region], ", ")
Now, use this Combined Region as the Legend or Color saturation field in your shape map. Power BI will color the state based on the grouped regions. While this still applies just one color per state, it accurately reflects multi-region membership in the tooltip and color logic. If you absolutely need each region within a state to be shown separately with its own color, you'd have to create or use a custom TopoJSON map where the state is split by regions, but that requires advanced GIS steps outside Power BI. So, to stay within Power BI's native capabilities, the best option is to use the combined region label approach, which is simple and effective.
Thank you @jaineshp @rohit1991 I will look into possibly doing the TopoJSON custom map, as I really want to achieve the split colors on the states.
Hi @jabueg,
I would also take a moment to thank @rohit1991 , @jaineshp for actively participating in the community forum and for the solutions you have been sharing in the community forum. Your contributions make a real difference.
Adding to their answers, you can also check the official Microsoft documentation below it might help you solve your issue:
https://learn.microsoft.com/en-us/power-bi/visuals/desktop-shape-map#custom-map-formats
If you are still facing any problems, feel free to ask. We are happy to help you.
Best Regards,
Harshitha.
Hey @v-hjannapu,
Thank you for the kind recognition - always happy to contribute to our community's success!
Best Regards,
Jainesh Poojara | Power BI Developer
Hi @jabueg
It is a limitation of Power BI’s default shape map to fill a single state (like California or Oregon) with multiple colors for different regions.Power BI’s shape map only allows one color per shape, meaning each state can only be assigned a single value/color.Unfortunately, you can't natively fill one state with multiple colors in the same map without using a custom TopoJSON file where each region of a state is represented as a separate shape. However, there is a workaround using DAX: instead of showing multiple colors, you can show that a state belongs to multiple regions by grouping regions into one text label.
Combined Region = CONCATENATEX(VALUES('YourTable'[Region]), 'YourTable'[Region], ", ")
Now, use this Combined Region as the Legend or Color saturation field in your shape map. Power BI will color the state based on the grouped regions. While this still applies just one color per state, it accurately reflects multi-region membership in the tooltip and color logic. If you absolutely need each region within a state to be shown separately with its own color, you'd have to create or use a custom TopoJSON map where the state is split by regions, but that requires advanced GIS steps outside Power BI. So, to stay within Power BI's native capabilities, the best option is to use the combined region label approach, which is simple and effective.
Hey @jabueg,
Looking at your maps, I can see you want to show states with multiple regions using split colors (like the stripes/patterns in your first image), but Power BI's native shape map visual doesn't support this directly.
Here are a few practical workarounds:
Option 1: Custom Visual
Option 2: Data Model Approach
Option 3: Hybrid Solution
Option 4: Shape Map Alternatives
The easiest immediate fix is Option 2 - adjust your data model to handle the multi-region states in tooltips while keeping the visual clean. For true multi-color fills like your reference image, you'll likely need a custom visual solution.
Did it work? ✔ Give a Kudo • Mark as Solution – help others too!
Best Regards,
Jainesh Poojara | Power BI Developer
User | Count |
---|---|
25 | |
10 | |
8 | |
7 | |
6 |
User | Count |
---|---|
32 | |
12 | |
10 | |
10 | |
9 |