Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rendering of name labels on place=suburb/quarter/neighbourhood polygons #4986

Open
joshinils opened this issue Jun 30, 2024 · 7 comments
Open

Comments

@joshinils
Copy link

Expected behavior

Render the given name for the place polygon.

Actual behavior

Nothing is rendered

Screenshots with links illustrating the problem

https://www.openstreetmap.org/way/806155225
image

Previously this was a landuse=residential with the same name;
image

also regarding #105 this is kind of the opposite problem. i don't want to put in a relation with a node in the center to render the name of this place.
I've only ever seen the name of a place rendered iff it is such a relation.

also related to #4839

@imagico
Copy link
Collaborator

imagico commented Jun 30, 2024

As phrased this issue is invalid - we render place=neighbourhood with a name label - see https://imagico.de/map/styleinfo/#style=osmcarto&section=tags&key=place&value=neighbourhood.

What you observe is that we render place=neighbourhood only on nodes, not on polygons. This is a conscious choice based on the practice of use of populated place tags as discussed at length in #103.

Note past discussion was always around standalone populated places of the types city - town - village - hamlet - isolated_dwelling. We have so far only casually looked at mapping practice for place=suburb/quarter/neighbourhood (#2816 (comment)).

Current numbers of place=neighbourhood:

  • polygons: roughly 90k of 466k
  • of those:
    • 44k also have a landuse tag
    • 13k are also boundary relations

I have not studied mapping practice on this enough in depth to form an opinion on rendering those.

If this is what you want to suggest please rephrase the issue accordingly. As always with questions of rendering polygons with tags otherwise predominantly used on nodes the main question is if mapping of these is geometrically consistent enough for us to reasonably provide positive feedback in the map.

See also #4842.

@joshinils joshinils changed the title place=neighbourhood with name=* not rendered place=neighbourhood polygon with name=* not rendered Jun 30, 2024
@joshinils
Copy link
Author

I want to have these polygons to be rendered with their name.
I see no difference regarding the presence of a landuse=residential tag. The name of a place should always be shown.

I believe the practice of tagging the combination of landuse=residential with any name is tagging for the renderer since these polygons seem to always be shown at some zoom level.

I don't know why these polygons of landuse=residential are named, and I don't approve of it. Usually, this is wrong to my understanding.
Most of them that I come across are better described as a place=* of some sort with their name, and almost always is the landuse=residential smaller or not as big as the boundary someone drew around the thing/collection/place that has a name.

Sometimes I also see single plots that are wrongly tagged as a landuse=residential with a name, so any of these that the wiki mentioned are worth appearing with their name:

these are not:

@joshinils
Copy link
Author

https://www.openstreetmap.org/way/974158589
is a polygon place=borough with a name which is not rendered. But it looks like mapped in error, since there is a type=boundary tag present. This also exists there: https://www.openstreetmap.org/node/10178426367

another polygon place=borough is: https://www.openstreetmap.org/way/776151738
which also has an independent name-node: https://www.openstreetmap.org/node/7243856959

@joshinils
Copy link
Author

The same happens with place=city, too:
node: https://www.openstreetmap.org/node/20949228 is rendered
way: https://www.openstreetmap.org/way/231549499 is not

and these are also independent, with no relation present (which I think is in error, iff both exist)

@joshinils joshinils changed the title place=neighbourhood polygon with name=* not rendered place=* polygon with name=* should be rendered Jun 30, 2024
@imagico
Copy link
Collaborator

imagico commented Jun 30, 2024

As you framed this now to be about all populated place polygons this is a duplicate of #103.

We can have this as a separate issue for place=suburb/quarter/neighbourhood. But any new discussion of place=city/town/village/hamlet/isolated_dwelling should go to #103.

Please be a bit more careful with your claims. I linked to styleinfo where you can see which tags OSM-Carto interprets and how they are rendered. We show with a name label on nodes, and only on nodes (in addition to place=city/town/village/hamlet/isolated_dwelling):

If you want to suggest the new rendering of any tags we currently do not render at all please open a separate issue for that.

The main problem that led us reject rendering of place=city/town/village/hamlet/isolated_dwelling on polygons was that there is a clear lack of consensus among mappers on:

  • if both node and polygon can exist for the same place or if it has to be just one.
  • the geometric meaning of the polygon. At least three schools of thought can be clearly identified:
    • the boundary of the smallest administrative unit the place is fully included in.
    • an aggregate of all urban land uses that are considered to belong to the place.
    • an abstract geometric hull around all builtup areas/buildings that are considered to belong to the place.

If the situation is different for place=suburb/quarter/neighbourhood would need to be determined.

@joshinils
Copy link
Author

I don't understand how #103 came to be such a big Issue. I'm aware I don't understand the history.
Naively I'd assume that a convex hull of any polygon containing any node with the same place tag and value should count as duplicate data and thus all but one should be omitted for rendering. If they are in a relation, this is purposefully and logically combined and the name is always shown at the node location.

To me, the only difference between a plain polygon with place and name vs. a relation with an outer member and label-node member is that a mapper manually chooses where to place the label instead of some other way of computing it.

I would rather have the fallback be that if there is no node the named polygon (or relation even, if there are such) gets its name displayed, as opposed to nothing at all.

We can have this as a separate issue for place=suburb/quarter/neighbourhood. But any new discussion of place=city/town/village/hamlet/isolated_dwelling should go to #103.

If #103 only discusses plain polygon place=city/town/village/hamlet/isolated_dwelling without a node, I'd like to suggest adding a label rendering for polygon place=suburb/quarter/neighbourhood without a node/relation.

If you want to suggest the new rendering of any tags we currently do not render at all please open a separate issue for that.

But also for place=borough/city_block/plot, since they exist and thus can be named. For these, there are currently no results on imagico.de.
If there is overlap with #4987 I apologize.

Please be a bit more careful with your claims.

I'm trying, as I understand. I've only given examples for non-relation polygons without nodes.

if both node and polygon can exist for the same place or if it has to be just one.

Even if only one of both exists, it's worth it to be displayed. The only issue arises if indeed both exist without a relation. And even then one could try to match them and deduplicate them.

@imagico imagico changed the title place=* polygon with name=* should be rendered Rendering of name labels on place=suburb/quarter/neighbourhood polygons Jul 1, 2024
@imagico
Copy link
Collaborator

imagico commented Jul 1, 2024

This has all been discussed at length in #103. Please bring up any new considerations on populated places in general (regarding changes in mapping practice, de-duplication etc.) there.

This issue only makes sense as a separate issue for place=suburb/quarter/neighbourhood so discussion here should focus on thoughts and arguments specific to these tags.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants