How to create Lego Map Style in QGIS

Andriy Yaremenko
4 min readOct 25, 2019

--

UPD 11.05.2020
The workflow described in this tutorial is not ideal.
I did it quick and dirty, just to share an idea.
But people still use it. So, I decided to improve this a little bit.
Thanks for the comments
Timmy, Vasilis Samaritakis, and all other people that reached me out.

Last few months I saw some maps in Lego Style. It’s looking very interesting and catching but unfortunately, all the tutorials that I able to find are for ArcPro.

So, I decided to change this inequity and trying to create a similar map in QGIS. Yesterday I posted on Twitter a result of my attempt and it seems people liked this (at least one hundred of them).

So, here very brief tutorial for creating a Lego-style map in QGIS.

Disclaimer! I used only QGIS. This workflow isn`t ideal. The main point is to show various ways of applying QGIS functions for map design. If you have any idea on how to improve workflow, I`ll be glad to hear it. Sharing knowledge is a thing that makes a difference.

00. Create a regular grid with data

The first thing that you need is a regular grid with data that you will visualize. To create grid go to Vector → Research Tools → Create Grid or just search in Processing Toolbox. The size of the cell depends on the map scale, so just play around with it to define the better size. After, you should add data to cells. The easier way to do it is using functions “Join Attributes by location” (to get data from vector source) or “Zonal statistics” (for raster data sources). In my case, I used the second one to get data about elevation from DEM.

01. Create a polygon centroids

Centroid from polygon function can be found in Vector → Geometry Tools →Centroids, or in Processing Toolbox.

UPD: Another option is to select Symbol -> Change.. in Layer Styling panel and add Centroid Fill geometry.

02. Set polygon and point styles in the same way

Set the identic style for point and polygon layers — the same variable to classify by, equal symbol type (categorized/graduated) and color scheme, the same data classification method (Jenks, Equal intervals, etc.) and numbers of the range. Adjust the size of the point so it looks like Lego bricks.

Please notice, that the size of the point may be displayed differently in the different scales. That why set needed scale before experimenting with point size.

UPD: for setting centroid size use “Meters at Scale” units, then your style will look the same on all scales.

03. Add shadow

For point layer — duplicate it, change to Single symbol and fill with some kind of gray color (it`s shadow!) Then offset it by x and y-axis on some little value. It`s should look like a shadow. Just experiment with this.

UPD: In case you added Centroid Fill geometry to the polygon layer, use “Draw effects” options in Layer Styling panel to add shadow (or any other effect) for this element. It`s even easier and looks very nice!

For the polygon layer, it`s a little bit complicated. I added a sub symbol for each range, fill it in gray color, and made little offset.

Then play with Symbol Levels to make its view more realistic.

Voila, the map is ready!

In case my tutorial was not very clear, here you can download this QGIS project and explore it more detailed.

If you wanna give feedback, share some ideas or find more useless maps — go to my twitter (AndriyYaremenko).

--

--