Generating pretty maps ready to be gift-wrapped

Lyon, France

I have been toying with the idea of generating visually pleasing maps centered on a given address, to have them printed and framed. The way I see it, it would make an original and personalised gift for the person living there. So when Marcelo de Oliveira Rosa Prates' prettymaps blew up on Reddit, I decided to try it.

The library was great and the visuals looked incredible, yet, I felt it was lacking a couple of features if I were to print the maps.

  • a CLI to make it easy to generate maps on the fly
  • easily changing the color scheme of buildings (and allowing black and white)
  • enabling the generation of rectangular maps, on top of circle and square
  • changing the output format of the figure to make it fit into a standard page (A3, A4, etc)
  • ensuring a 300dpi output
  • set the CLI command used to generate the map as the map title, for autodocumentation purposes

My good friend Etienne solved the rectangular map generation in a beautifully laid out PR, that has been sadly sitting there for a while without attention. It seems that the repository owner got issues with NFT con "artists", and pretty much abandonned the project, which hasn't seen activity for the last 5 months.

Seeing this, I decided to fork the project, and work on the remaining ideas.

Here are a couple of examples of maps that I've generated and printed for people in my entourage.

The command used to generate each map is displayed as the map title

Paris 20e, France Toulouse, France Chalon-sur-Saône, France Béthisy Saint-Martin, France

The color schemes are only applied to buildings, and are automatically generated from matplotlib colormaps. This was an quick and easy to generate themes "for free". I also added a couple of Scottish tartan inspired themes, that I used to print a map as a wedding gift for a lovely franco-scottish couple.

My local printer bills me about 1.5€ for each print, which makes for an original and yet remarkably cheap gift. I recommend a thick and matte paper, without any texture, as it might collide with the map dotted background.

If you'd like to give it a try, feel free to have a look at the repository!