Skip to main content

30 Days of Maps Day 24 - Only Circular Shapes

· 2 min read
James Dales
Co-founder of Tekantis

Day 24 of the #30DayMapChallenge and today's theme is "Only Circular Shapes" - Map using only circles. Everything should be circular. Forget straight lines and sharp edges, and see how creative you can get by sticking to round shapes.

Today seemed liked a good opportunity to explain the three different options we have in Icon Map Pro for determining circle size.

In the top of the Circle Configuration settings, you'll find a setting called Size Behaviour. This has three options:

  1. Relative
    This option provides two further settings, minimum size & maximum size. This will plot all of your circles on the map with their size in pixels between these two values. The size will be determined based on the value in the "Circle Size" field. The smallest value is mapped to the "minimum size" and the largest to the "maximum size", with all other values being calculated in between.
  2. Size in Pixels
    Similar to the option above, this option draws circles based on a size in pixels, but rather than being based on a range of values, it uses the specific value supplied in the "Circle Size" field. Therefore if you provide the value 50, it will draw a circle with a radius of 50. As the circle is drawn as pixels, when you zoom in or out of the map, the circle will always stay that size on the screen. This means when you zoom out, it covers more landmass.
  3. Size in Meters
    Rather than drawing a circle in pixels, this option uses the value in the "Circle Size" field to draw the circle radius in meters. This means that when you zoom in on the map, the circle appears to get bigger on the screen, but covers the same amount of land. This is a useful option if you wanted to show all points within 5km of a store.

30 Days of Maps Day 23 - Memory

· One min read
James Dales
Co-founder of Tekantis

As we enter the weekend it 's day 23 of the #30DayMapChallenge and today's theme is 2 colours - Map based on memory. Create a map of a place you remember—hometown, favorite destination, or somewhere meaningful. It doesn’t need to be perfectly accurate, just how you recall it.

Unfortunately I just don't have time today to create a new map from scratch, so instead I thought I'd use our custom raster overlay and background map capability to show some historic maps. This map, hosted by MapTiler, is over 130 years old - I loved that I was able to find my house.

Day 23

30 Days of Maps Day 22 - 2 colours

· 2 min read
James Dales
Co-founder of Tekantis

It's already 22 of the #30DayMapChallenge and today's theme is 2 colours - Create a map using only 2 colors. No gradients or shading—just two flat colors. This restriction encourages creativity in design and forces you to think about how to clearly convey your message with minimal color.

For this challenge I've extracted from OpenStreetMap, the areas identified as being used for military purposes in the UK. I've loaded this data into the Power BI dataset as well-known text (WKT). I've then used the formatting options in Icon Map Pro to set the colours to red. I've chosen our "Toner" background style to limit the background to black and white, making the red military areas stand out.

To distinguish between the different types of area I've used Icon Map Pro's ability to used hatching as well as solid fill colours, so I've formatted training areas and airfields with 2 different types of hatching - one at 45° with thick lines and one at 90° with thin lines. I've also set the outline of the barracks to use a dash pattern, rather than a solid line. I've created small images of each of these options, and added them to Power BI's new Tile Slicer to create an interactive legend that you can use to filter the objects on the map. I've added a region dropdown, and a couple of bar charts to represent the amount of area used by the military both by local authority and category.

I particularly like the ability to be able to do this for scenarios where accessibility is important, and colours can't be relied on to distinguish between areas.

If you'd like to see how the report was built, you can download it here.

Source for Local Authority to Region Lookup: Office for National Statistics licensed under the Open Government Licence v.3.0 Source for Local Authority Boundaries: Office for National Statistics licensed under the Open Government Licence v.3.0. Contains OS data © Crown copyright and database right 2024

30 Days of Maps Day 21 - Conflict

· One min read
James Dales
Co-founder of Tekantis

On to day 21 of the #30DayMapChallenge and today's theme is Conflict - Map a conflict. Political, territorial, or social—there are conflicts all around us. Map boundaries, tension points, or the outcomes of conflicts.

Just a really quick one today as I've not much time. This map shows the location of the UK's wartime pillboxes used for defence in the 1st and 2nd world wars. The last update to Icon Map Pro enabled large numbers of images to be added to the map using WebGL rendering. This report shows over thirteen thousand images on the map at the same time. Clicking the button in the top right enables a preview of our forthcoming upgrade to clustering which enables the clustering of images, as well as circles shown in day 1 of the challenge. Notice the option to use a square for clustering, rather than the circle used in day 1's postbox example.

Data courtesy of the Steve Thompson & the Pillbox Study Group

If you'd like to see how the report was built, you can download it here.

30 Days of Maps Day 20 - OpenStreetMap

· 2 min read
James Dales
Co-founder of Tekantis

It's day 20 of the #30DayMapChallenge and today's theme is OpenStreetMap - Use OpenStreetMap data to create something. OpenStreetMap offers rich, editable data from roads to buildings and beyond. The goal is to showcase the power of this community-driven dataset.

OpenStreetMap is a great source of geospatial information - in fact it's the data source from which we build our base maps. For today's challenge I've extracted the railway network for Europe. I've used the relations information to determine the routes for many of Europe's train operators. There's far too much data to load into a shape file, and too many operators to split into multiple files, so I've loaded the data as WKT into the Power BI dataset. Each section of track and station is a row of data - there are over 3 million of them.

I've added some Power BI conditional formatting, configured by slicers, to allow the track width to be represent the maximum speed of that section of track, and for the colour to represent a route by that operator. Selecting a specific route, will also enable labels to show the station names.

The stations I've mocked up a performance KPI, so stations are shown in traffic light colours according to their status. I've also added some random alerts, so you may see some warning triangles at various locations.

As OpenStreetMap data is crowd-sourced, the data quality isn't always consistent, so I've filtered the report to selected of train operators that have largely complete data.

If you'd like to see how the report was built, you can download it here.

30 Days of Maps Day 19 - Typography

· 2 min read
James Dales
Co-founder of Tekantis

It's day 19 of the #30DayMapChallenge and today's theme is Typography - Map focused on typography. Let text and words do the heavy lifting today. Whether you’re focusing on place names, labeling, or using text to create shapes and patterns.

Icon Map Pro's background layers include labels for places and streets etc as you would expect, but it also enables you to add data-bound text labels to the map.

Labels can be added onto the map and the text specified using conditional formatting, so it could be the name of an item on the map, or the value of a KPI or both! But it's not just the text itself that you can format using Power BI's conditional formatting. You can determine whether the label appears over, above, below, to the left or right of your circle or image. And of course you can set the colours, but not just of the text, but also the background and the border. And you can set the border width and amount the corners are rounded. And all this independently for every row of data. Perfect for making those KPIs stand out when they require attention, or just to add subtle context to the items on your map.

For lines, in addition to labels, we can also add text along the path of the line itself. You can specify the text, whether it appears above, below or through the line, whether it repeats along the path, or is just shown once. You can even chose whether it appears lengthways, or perpendicular to the line. And, of course, you can set the colour. All via conditional formatting.

If you'd like to see how the report was built, you can download it here.

30 Days of Maps Day 18 - 3D

· One min read
James Dales
Co-founder of Tekantis

Today is day 18 of the #30DayMapChallenge and today's theme is 3D - Map with depth. Add a third dimension to your map. Whether it’s visualizing elevation, buildings, or something more abstract, today’s about thinking beyond flat surfaces.

Icon Map Pro doesn't yet support 3D, but it is something we're planning and already prototyping.

Here's the Grasmere in the Lake District in the UK - I'm using our own base map layer with MapTiler's terrain RGB tiles to provide the elevation profile, giving the map it's 3D effect. Over that I've added a transparent layer showing the potential impact of flooding using the Environment Agency's WMS service. I've then extruded the building profiles from our base layer to highlight the potential impact of flooding on specific properties.

30 Days of Maps Day 17 - Collaborative Map

· 2 min read
James Dales
Co-founder of Tekantis

Sunday's challenge is day 17 of the #30DayMapChallenge and today's theme is Collaborative Map - Collaborate with others on a single map. For today’s challenge, team up! Whether you work with one person or several, the idea is to combine your efforts on a single map.

Sadly there hasn't been time to work on a map with someone else this week - there's just too much going on! However, I thought I would add a twist to the challenge instead, and show how lots of different providers can play together in Icon Map Pro.

This map has multiple providers contributing to the final map:

  • Background maps from Ordnance Survey
  • Hill shading overlaid from MapTiler
  • Local Authority Choropleth map using Mapbox hosted vector tiles
  • Lower Super Output Area boundary overlays via an ArcGIS feature layer hosted by the Office for National Statistics
  • Traffic provided by Azure Maps
  • Weather provided OpenWeatherMap

Clearly this isn't what you would build for a production map, but it's a good example of the different integrations that Icon Map Pro offers out of the box. Another one I couldn't quite squeeze in was Google Maps!

Collaborative Map

I can't provide the download link for today's challenge as it is dependant on too many external API keys that can't be shared.

30 Days of Maps Day 16 - Choropleth

· 3 min read
James Dales
Co-founder of Tekantis

Saturday brings us to day 16 of the #30DayMapChallenge and today's theme is "Choropleth" - Classic choropleth map. Use color to show data variation across regions. This simple but effective technique is a staple for showing thematic differences.

Choropleth maps have been one of the main uses of Icon Map Pro and I've already created a drill-down choropleth map on day 12 so I'm adding something extra to today's challenge. Often choropleth maps are used as context for other information shown on a map. In today's example I'm using the Index of Multiple Deprivation for England as context to show whether doctors surgeries and dentists are located in deprived areas. These are two separate datasets using different geography - the doctors and dentists are point data identified by longitude and latitude coordinates, and the deprivation data is at Lower Super Output Area (LSOA) level. There 33,755 LSOAs in England, so it's not possible to create an interactive choropleth map for England using Power BI's native visuals.

Two separate datasets in one visual are also a challenge for Power BI - the underlying architecture doesn't allow a single visual to be fed by more than one set of related tables. We can get around this by creating complex many to many relationships to ensure that filtering etc works as required, but it is not easy to get right. Icon Map Pro offers an additional approach with its reference layers, allowing the context information to be stored within the shape layer, and then the point data simply fed into the visual as a data layer. The great part is we can still conditionally format and filter the reference layer in line with the point data, even though it's not a normal data bound layer.

I've download the LSOAs for england from the Office for National Statistic's Geoportal, and joined it to the Index of Multiple Deprivation data using QGIS. For each LSOA, I've added a property to hold the deprivation index for each of the deprivation domains. I've then uploaded this file as an Esri Shapefile into Icon Map Pro. I can then specify gradient (or rule based) formatting within Icon Map Pro to colour the LSOAs based on the deprivation value. Which property to lookup up this value can also be set using Power BI conditional formatting, which I've driven from a Power BI slicer, to allow you to pick which deprivation domain to view. In addition I'm also dynamically filtering the LSOAs based on a region slicer, which also filters the doctors & dentists data.

The doctors and dentists data comes from the Care Quality Commission's Open Data Portal. I've then used PowerQuery to join the postcode from the CQC data to the National Statistics Postcode Lookup to get the longitude and latitude for each provider. I've limited to providers to just doctors and dentists for the challenge, but there's still 20 thousand of them. This is also the first public outing of Icon Map Pro's forthcoming clustering capability (a highly requested feature). Finally I've added tooltips to show the provider's name, services and specialisms.

The downside to this is needing to do a spatial join to add the deprivation data to the shape file - but we will be creating tooling to make this an easy process soon.

If you'd like to see how the report was built, you can download it here.

30 Days of Maps Day 15 - My data

· 2 min read
James Dales
Co-founder of Tekantis

Half way there! Day 15 of the #30DayMapChallenge and today's theme is "My data" - Map something personal. Map data from your own life—this could be places you’ve traveled, your daily routine, or any other personal touch.

For this challenge I needed some personal data so I requested an extract of all my data from Strava. Whilst I used to be a keen mountain biker, most of my recent activity has been riding with the kids, but there are still plenty of rides that I've recorded. The data extract from Strava contains a folder of all my rides in GPX format - one file for each ride, so I used PowerQuery's folder data source and merged all of my rides into a single table inside of Power BI - one row for each point along each ride. Within a couple of minutes I had a table of data with nearly a million rows of data. I really can't stress enough how quick this was!

I applied my usual DAX pattern that uses a measure to concatenate each point and turns them into a single linestring in WKT format - one of each ride. Adding this into Icon Map Pro meant I was able to visualise all of my rides ever in Power BI. I added a table at the bottom pulling out a few extra bits of meta data, and I was quickly able to zoom in and view each ride. Finally I added a line chart to show the elevation of each ride, using a DAX measure to only show the line when a single ride is selected.

Within less than 10 minutes I'd created an interactive report allowing me to analyse nearly a million data points. With more time there's loads more that could be done with this to add real value, calculating speed and average stats by year, month etc.

For privacy, I've restricted to the report to just a few rides in Wales, but it's enough to get the idea.

If you'd like to see how the report was built, you can download it here.