I'm creating a custom map of the town I live in. It's intended to be used in static form (print/static imagery). The emphasis is on the visibility of street names and house numbers. The latter has been a non-issue throughout. The former...

There are some very small streets in the town. Frustratingly, no matter what settings I use, they only appear when the zoom level is way too high. If I scale that down then to, say, a block per A4 page, the street names will be too small. If I increase the font size, I'm forced to zoom even more for the names to appear, and that becomes a cycle.

There is actually room to fit those labels on those streets (sometimes when I zoom in just a little bit more, two identical labels appear at the same time -- and they fit). Is there a way to enforce that all street names are visible on the map? If not, which settings are my best bet?

If somebody knows of a Mapbox style I can download that fits my purpose, I'm all ears as well.


Not exactly what I wanted, but a way to work around that gives your more manual control on how the data is displayed:

  • Download a copy of OSM data in GeoJSON here: http://overpass-turbo.eu (Wizard -> highway=* to get all the data related to streets).
  • Shorten the name of the streets where possible (the issue will not appear as frequently in that case; in my situation, that meant replacing 'Street' with 'St', etc.).
  • Upload as a dataset, import it into a tileset.
  • Create two identical text layers from the tileset, you can call them 'small-streets' and 'streets'. The former should be higher up the layer list.
  • In small-streets, go to 'Select data' and Filter values to apply the layer only to the streets affected by the issue.
  • Change the way those streets looked without affecting the rest: minimize spacing, consider smaller, thinner or more condensed font, allow overlap, ignore text placement.

I'm actually thinking that I'll need three or four different layers for the streets of different size. I'm looking for more ways to minimize the damage the issue is doing.

In one case, I went to the dataset and switched start and end points of the street. That helped because the street was drawn right to left, while the text in my language is left to right.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.