gravitystorm / openstreetmap-carto

A general-purpose OpenStreetMap mapnik style, in CartoCSS
Other
1.53k stars 818 forks source link

Rendering of United Kingdom vs Great Britain name #4772

Open nc011 opened 1 year ago

nc011 commented 1 year ago

Expected behavior

As the actual country name, United Kingdom should be rendered more prominently than Great Britain (the name of the island that incorporates England, Scotland and Wales).

Actual behavior

At zoom level 4, United Kingdom is more prominent than Great Britain At zoom level 5, the two names are rendered with about equal prominence. At zoom level 6, Great Britain is more prominent than United Kingdom At zoom level 7, only Great Britain is rendered. I note that the name of smaller countries (e.g. Ireland, Belgium) still have their name rendered at this level but larger ones don't.

Screenshots with links illustrating the problem

Screenshot from 2023-01-20 14-03-39 Zoom level 6

I understand that the UK might be a bit of an outlier and doesn't deserve any special treatment, but I just wonder if there's a small tweak to ensure country names are a little more prominent at certain zoom levels.

imagico commented 1 year ago

As you can probably imagine we won't do a special adjustment of the style rules for the UK.

We render admin_level=2 boundary relations with a constant size label and we render place=island polygons with a label depending in font size on the size of the island. That is what leads to the relative label sizes you observe.

Both choices are deliberate. So the question is: How would you suggest to change the labeling rules for countries and islands to address the issue you observe in the UK and how would such rules work in other parts of the world.

See also #4178.

nc011 commented 1 year ago

As you can probably imagine we won't do a special adjustment of the style rules for the UK.

Of course and I understand the justification for the current rules for most islands.

However, "Great Britain" is just a landmass. Not a country or political entity. England/Scotland/Wales are far more important to show on the map than "Great Britain". Most* maps wouldn't even show "Great Britain" as a label at all.

(*my not very large or scientific sample of 3: Google, Bing, Ordinance Survey and the other layers on osm.org)

How would you suggest to change the labeling rules for countries and islands to address the issue you observe in the UK and how would such rules work in other parts of the world.

Honestly not sure.

I also looked at New Zealand which also has a bit of odd behaviour too (but almost opposite to the UK/GB issue): Zoom level 4: South Island and New Zealand are rendered (but not North Island). Zoom level 5: North Island and New Zealand are rendered (but not South Island). Zoom level 6: New Zealand is rendered (but not North Island or South Island).

From a user perspective (rather than rules based approach) it seems odd that the name of the two islands render at differing zoom levels. Though at least the country name is rendered throughout.

Iceland is also an interesting case. The labelling of Iceland (Island) changes between zoom levels 6 (country) and 7 (island). Again, that just seems a bit odd from a user perspective.

I would check how Japan renders but unfortunately I have no idea how to read Japanese, so I have no idea what names are being rendered when and where.

imagico commented 1 year ago

I also looked at New Zealand which also has a bit of odd behaviour too

That is a different problem (#3880).

matkoniecz commented 1 year ago

As the actual country name, United Kingdom should be rendered more prominently than Great Britain (the name of the island that incorporates England, Scotland and Wales).

Why?

However, "Great Britain" is just a landmass. Not a country or political entity. England/Scotland/Wales are far more important to show on the map than "Great Britain".

Why we are obligated to show island labels less prominently than country labels?

Most* maps wouldn't even show "Great Britain" as a label at all.

Most maps also show railways far less prominently and so on.

nc011 commented 1 year ago

As the actual country name, United Kingdom should be rendered more prominently than Great Britain (the name of the island that incorporates England, Scotland and Wales).

Why?

Simple convention of hierarchy: country > state/island > sub-division/region > city etc.

Of course, at differing zoom levels, the importance of each hierarchy changes and I get changing the importance of the rendering. But, in the case of the UK/GB, I don't think Carto gets this right.

However, "Great Britain" is just a landmass. Not a country or political entity. England/Scotland/Wales are far more important to show on the map than "Great Britain".

Why we are obligated to show island labels less prominently than country labels?

Well... you obviously aren't obligated to do anything and I appreciate it doesn't make sense to completely change styling rules to accommodate just one country.

But as a Carto user, an OSM contributor, and a UK resident, it is my feedback that the current styling looks odd and my expectation would be that United Kingdom should be more prominently rendered than Great Britain.

It's also a matter of consistency. I understand the current style choice is based on the size of the island. This means for most countries around the world, where the islands are relatively small compared to the total size of the country, it's not a problem. However, for the United Kingdom (where the island is a large part, but not all, of the country) this looks odd/out of place (IMO).

(I note that for small island countries, e.g. Malta, Crete, this isn't an issue since the island name is only rendered at high zoom levels where the country name is fully replaced by the identical island name.)

Most* maps wouldn't even show "Great Britain" as a label at all.

Most maps also show railways far less prominently and so on.

I realise this is purely a stylistic choice and Carto devs/community are free to adopt whatever style they please. This statement was purely for context as part of my feedback.

imagico commented 1 year ago

Why we are obligated to show island labels less prominently than country labels?

To be clear: We are not - neither by some authority nor by generally accepted rules of good map design. But there are definitely aspects of the country/island labeling as is other than subjective priorities that are not ideal.

If anyone wants to look at this aspect of labeling in OSM-Carto and work on ideas to improve it - the following potentially non-obvious things would probably be good to consider: