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
I wanted to share this tip for custom projections in Shape Map in case someone else stumbles into the same issue I had. Also, if someone has a better way to do this, do tell!
Issue: I wanted to visualize data on the World map and various countries. From Preview features, Shape map visual seems to be a perfect candidate for this. When I open the Map settings, however, Map type list doesn’t have a world map. That is quickly remedied as there are tons of “world countries” as TopoJSON files that can be used as a Custom map. Yet, this may look a bit odd, because Shape map visual has only three Projections to choose from: Equirectangular, Mercator, and Orhtographic.
How to add another projection, for example Robinson, Winkel Tripel, or Natural Earth II?
Here’s an example of Natural Earth II projection in Power BI Shape Map:
Hi, @henrituol
I followed your steps but when I try to auto-filter the map, I get only thick grey rows - Basically, that resolution won't support auto-filtering. Did you encounter the problem? Any suggestions?
thanks a lot
This works like a charm. I would have two questions for minor changes:
1) how can I remove Antarctica? (can you provide more information on how to access and use "the clip feature" mentionned in hannibalmads reply?)
2) how can I add Singapore and Hong Kong as separate countries to the global map?
Thanks for your help!
Ad 1)
Use the shift-drag box tool on the right.
Then hold Shift and then mark Antarctica with the mouse. After that click on Erase to the right
An extra tip : You can use Mapshaper to clip the map. However interesting Antarctica is as a continent, I had a request to show revenue across the globe. And Antarctica was irrelevant in that case and it does take up a lot of space in the visual. So by using the clip feature I could exclude the continent from the map.
Additionally - from the downloaded json you can extract the countries as a dimension table :
let
Source = Json.Document(File.Contents("C:\Download\World Map.json")),
#"From JSON to Table" = Table.FromRecords({Source}),
#"Navigate to countries" = Table.ExpandRecordColumn(#"From JSON to Table", "objects", {"ne_110m_admin_0_countries"}, {"countries"}),
#"Expand countries" = Table.ExpandRecordColumn(#"Navigate to countries", "countries", {"geometries"}, {"geometries"}),
#"List of geometries" = #"Expand countries"{0}[geometries],
#"Convert List to Table" = Table.FromList(#"List of geometries", Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expand Record to properties Column" = Table.ExpandRecordColumn(#"Convert List to Table", "Column1", {"properties"}, {"Column1.properties"}),
#"Expand properties to selected Columns" = Table.ExpandRecordColumn(#"Expand Record to properties Column", "Column1.properties", {"REGION_UN", "CONTINENT", "NAME_SORT", "ADM0_A3", "ADMIN"}, {"Country Region (UN)", "Country Continent", "Country Sort Order", "Country Key", "Country Name"}),
#"Set Data Types" = Table.TransformColumnTypes(#"Expand properties to selected Columns",{{"Country Region (UN)", type text}, {"Country Continent", type text}, {"Country Sort Order", type text}, {"Country Key", type text}, {"Country Name", type text}})
in
#"Set Data Types"
Replace the file path as you please.
This helped me to understand that the ADM0_A3 field has the values for the country lable, that needs to be dragged into the Location of the Shape Map visual. Example values are "USA" , "NOR" , "AFG"
Thank you for sharing your insight with the community!
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.
| User | Count |
|---|---|
| 23 | |
| 21 | |
| 20 | |
| 18 | |
| 13 |
| User | Count |
|---|---|
| 58 | |
| 51 | |
| 38 | |
| 31 | |
| 26 |