Poor man's rendering

Posted by hajo on 12 December 2013 in English (English)

The problem

I noticed that the standard/default osm-map does not show a lot of things that are in the map-database.

* Shops - only a few are rendered so far: bakery, florist, hairdresser, clothes, bikes, DIY and supermarket
* Ambulance-stations
* Emergency-Phones (but regular phones are shown)
* Bike-Parking
* Benches, waste-baskets
* Flagposts
* Fountains / Artwork
* Rocks / Boulders (e.g. with memorials / engravings on them) * Clocks / sundials
* …

Other users also noticed, and there are various entries under questions:
* shop appears only in edit mode
* Store Name Not Visible On Map
* more icons going to be available for additional types of shop…
* …

The usual “answers” / excuses go something like * “we cannot show everything”,
* “icons are missing”, * “you can make your own map if you like”. etc.
I think that is not the way to get ahead…

The standard map has to be at least as useful to the average map-user as google-maps, to get any traction.
Maperitive and Tilemill might be fine, but I don’t want my own nice map, I want nice maps for everyone.
Also, I don’t see the average map-user, looking for a shoe-shop / ambulance-station / emergency-phone etc. saying “great map, I can do the missing stuff myself” :)

I rather suspect the average map-user does not want a map-construction-set, he wants to see his shop / POI / whatever NOW. If he doesn’t find what he need, NOW, on the STANDARD-MAP, he wil most likely go back to googlemaps / bingmaps / mapquest / whatever –> another wasted good first impression.

The ability to do your own maps with OSM is a bonus, but not the most frequent use-case.

Telling people about special-purpose maps, or “you need an account” etc. is also the wrong way to show them how great OSM is.
For the average map-user, if something is not reachable from the frontpage, with max. 2-3 clicks, it effectively doesn’t exist.

The goal

So, I have been looking for a workaround, not just for arguments sake, but to also show what actually can be done.


Mislabeling shops that don’t show up on the map would be an easy way to show that they could be rendered (i.e. there is space enough on the map to write icon and text).
A standard-icon (cart, bag) shouldn’t be a big problem too - iD-editor uses a bag-icon.
However, it is a problem to find out the correct spot/person/forum/mailinglist etc. to set things in motion…

* Weiterstadt - a building with 3 shops.
Most of the other shops in that area are occuping a whole building, so they don’t have a problem to put their name on the map.
This building has a computershop, a shoe- and a kitchen-shop (ComputerMax, Sioux, Plana). These shop-types don’t have their own icons yet.
Just across the street, you can see another shoe-shop and kitchen-shop (“Schuhcenter”, Küchen-Keie), and to the west, another electronic/computershop (MediaMarkt).
I would consider it quite unfair to show those other shops on the map, (just because they are located in their own building, which is supported by the rendering), and not the 3 shops in a common building.
So, here we see them, as “supermarkets”.
For contrast, there is yet another computershop “Maxs-Master”, just across from ComputerMax, where normally, all you can see is “9”.
With some tweaking, (put name of shop into addr:housename, and remove addr:housenumber) we can at least show the name of the shop on the map.

Important stuff

  • Ambulance-stations
  • Emergency-Phones

I really fail to see why these are not rendered,
e.g. just use the red cross from hospitals, and the icon for regular phones.

Other stuff

Artwork, Fountains, Flagposts, Clocks/sundials (Tourist), Bike-Parking (Bikers), Benches, Waste-baskets (Pedestrians), Vending-machines, Grit-bins (everyone needs stuff:)

This is were I get into rendering stuff, using the poor man’s way.
As shown above, with the current rendering, we can put text onto the map that is in the tag “addr:housename”.

My showcase is Alter Friedhof DA - the old graveyard of Darmstadt (which now has quite some more details than most graveyards :)

I have been using:
* Bike-Parking “ofo”
* Benches “=”
* Waste-baskets “u” or “µ”
* Emergency-Phone “(“
* Flagposts “F”
* Artworks “@” (e.g. dry fountains - during winter, the difference can be hard to tell) * Fountains “f” or “\!/” (for the splashy kind)
* Clocks / sundials “Q”
* Vending-machines “V” or “Z” (cigarettes)
* grit-bins “#”

Also plain “address-markers” for the layout of the graveyard, i.e. as “place=locality”.

Location: I-A, Darmstadt-Ost, Darmstadt, Regierungsbezirk Darmstadt, Hesse, 64287, Germany

Comment from ToeBee on 12 December 2013 at 20:42

Maperitive is an easy way to render your own map from OSM data. I wrote a blog post about using it.

Another option is Tilemill.

Comment from SK53 on 12 December 2013 at 20:50

For shops look at this has many additional shop types rendered.

There is currently work to improve rendering of many items now that the rules have been migrated to CartoCSS rather than the unwieldy raw XML format used previously. However, this needs people to do the work rather than suggest that somehow it’s an excuse.

Notwithstanding this, not everything will ever be rendered. It’s just not sensible or practicable. Even at the zoom leves now in use things which do have rendering rules are not shown because of clashes between rendering rules. Cartography is as much the art of not showing things as well as showing them.

Comment from chillly on 12 December 2013 at 21:37

OSM is not in competition with Google maps. G maps is simply a place to show adverts - that’s how they make money. If you want to see alternatives to G maps, you need to see commercial renders using OSM data. There are many providers, some are listed here:

Comment from SK53 on 12 December 2013 at 23:22

For goodness sake please don’t use addr tags to do this: some people use the address data to do things like routing. Using it to store character strings which already looked tacky on maps 30 years ago (tagging for the renderer) just makes everyone’s job harder.

Please clean this up! Otherwise you may be forcing EVERY consumer of address data to write special code to remove all your ‘poor-man’s rendering’ tags.

I also think you have guaranteed that any change requests you make regarding rendering will not be treated very seriously. We have hundred’s of thousands of contributors and a core team of developers which struggles to reach the hundreds. Ask yourself why these people should prioritise what you want over lots of long-standing requests.

The issue of marking areas of cemeteries happens to be well-known and is discussed and documented on the wiki: I’m sure how well-developed it went from there, but I think we had a reasonable idea of what we wanted to do.

Comment from Rovastar on 13 December 2013 at 01:24

Slowly things are getting added/changed to the main map Join in and add specific example you want added. but please don’t add wrong info like you are.

Comment from Firefishy on 13 December 2013 at 10:08


Comment from Richard on 13 December 2013 at 11:02

“I really fail to see why these are not rendered”

Because you haven’t submitted a good patch. Where do you think the rendering rules come from otherwise, magic stylesheet fairies?

Comment from mcld on 13 December 2013 at 11:28

:( this is yucky. The default style deliberately doesn’t show benches and bins, because that’s too much detail for a standard map. No map can show everything (and be actually readable).

You’re making me sad by “hijacking” tags to hack what is shown by default :(

Comment from Pieren on 13 December 2013 at 12:04

Or use another tile server. Have a look at this one:

More shops, more zoom levels, highway crossings, tennis courts, football piches detailed, and much more.

Comment from jremillard on 14 December 2013 at 01:18

Rendering all shop names is waiting for refactoring (version 2.x) to be completed. So, don’t bother with a patch yet, it will not be merged.

Here is the shop name issue.

Comment from jutezak on 16 December 2013 at 19:16

What would be nice: if POI were rendered asseparate bitmaps on top of the tiles.

A single tile layer could then support different uses depending on the added POI. Something like it seems to be in use for highlighting ways.

In any case, for teh original author: try a vector rendering program that uses OSM and enable ALL the POI. You won’t see a map any more because of the trees, recycling stations, fire hydrants, phone booths, shops, tagged buildings, traffic lights, boulders, speed bumps and so on. Then you are luck so little art works have been mapped so far :)

Login to leave a comment