gravitystorm / openstreetmap-carto

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

Color of societal-amenities is too light, outline is not visible and text color is not clearly related #3607

Open jeisenbe opened 5 years ago

jeisenbe commented 5 years ago

Background

Expected behavior

Actual behavior

Possible solutions

Options I've considered:

  1. slightly darker yellow, such as #f8f7c1 LCH(96,27,107)

    • This color is a little close to beach (delta 5.2)
    • Too close to secondary road fill
  2. Less saturated, a touch greener #f6f7c7 Lch(96,24,109)

    • Better difference from beach and sand than the first option
    • But still close to secondary road fill
  3. Less saturated, a touch lighter: #f5f3c6 LCH(95,23,106)

    • less similar to beach than the first option, still a little close to secondary road fill (delta 7.0), closer to sand (delta 6.6)
  4. Similar to old farmland color but less saturated: #f8ecdd - LCH(94,9,80)

    • Needs to be checked against blue-green colors like leisure and pitch
    • Also check near sand, bare_ground and beach
    • Might work if pitch color were changed to be slightly lighter or less blue (my understanding is that the dark blue-green pitches were the main issue, not the leisure color or grass color - see https://github.com/gravitystorm/openstreetmap-carto/pull/3412#issuecomment-425738513)
    • But see also #1991 - "landuse=farmland rendering color too close of amenity=hospital"
  5. Current beach color #fff1ba LCH(95,29,97)

    • Nice yellow color which is distinct from others and has a good lightness to match with urban landcover colors
    • Might need to be adjusted for slightly lower chroma/saturation?
    • Requires combining beaches with sand color or switching beaches to another color (eg old farmland, or old societal amenities color?)

These should all be tested at z13 to z17, including areas near:

Screenshots illustrating the problem

Current #ffffe5 Lch(99,13,109) Singapore National University http://openstreetmap.org/#map=13/1.3052/103.8312 z13 z13-nat-univ-sing z14 z14-nat-univ-sing z16 z16-clementi-schools

http://openstreetmap.org/#map=16/1.3014/103.7845 z15 z15-tiong-bahru

http://openstreetmap.org/#map=18/1.30184/103.78648 z18 z18-methodist

Kahului, Maui Hawaii http://openstreetmap.org/#map=13/20.8829/-156.4679 z13 z13-kahului-master

z14 z14-kahului-master

Adamant36 commented 5 years ago

I agree the color could be darkened a tad. I dont think reusing an old color from another landuse should be the solution though. Otherwise, why did we change the landuse away from that color in the first place? In other words, the same issues would then exist for the new landuse that prompted us to change it in the first place.

Second, if you desaturated the yellow to much, then your essentially conseding that your arguement against using light yellow/tan colors for retail/commercial is void. Since they would be very similar. Its just something to think about.

Third, orange has already been singled out as not a good color due to being close to red/emergency (or it would risk being to close to gastronomy orange). So thats not an option either.

So I think the best option is just adjusting the already existing yellow color slightly. Otherwise its uselessly over complicating things and using colors that have already been discounted in other issues.

jeisenbe commented 5 years ago

All of the five options above are more saturated than the current color, except for option 4 The second and third options are "less saturated" in relation to option 1 only; sorry for any confusion this caused.

Here are some test images I made with option 3 above:

  1. #f5f3c6 - Lch(95,23,106)
    • 4 points darker and 10 points more saturated than the current color; same yellow hue
    • Line has also been adjusted to darken 60% & saturate 40% z13 z13-university-f5f3c6 z14 z14-nat-univ-f5f3c6 z16 z16-colleges-f5f3c6 z18 [Edited; wrong color previously] z18-methodist-f5f3c6
Adamant36 commented 5 years ago

@jeisenbe, its alright. Thanks for the test renderings. I like the direction.

After looking around a little pitches could benefit from being a little less blue. Although that's probably better for another issue.

jeisenbe commented 5 years ago

The current beach color is a little too saturated and orange, next to the developed landuse colors. Here is a slightly less saturated option 6, #f9efbc. Compared to the current sociental_amenities color this would be 5 points darker, 13 points more chroma or saturation, and 9 points different in hue (towards orange, away from green)

  1. #f9efbc - Lch(94,26,100) z13 z13-nat-univ-f9efbc z14 z14-nat-univ-f9efbc z16 z16-colleges-f9efbc
jeisenbe commented 5 years ago
  1. Similar to old farmland color but less saturated: #f8ecdd - LCH(94,9,80)
    • This option, number 4, is 5 points darker, 5 points less chroma/saturation, and a different hue than the current color.
    • I've also changed leisure=pitch to be slightly less blue, by changing it to be the same as golf (and old scrub) color, #b5e3b5 LCH(86,29,143), instead of LCH(85,22,168). This would need further adjustment but might be an improvement in its own right, as @Adamant36 suggested above.
    • Perhaps the saturation is too low now, however.

z13 z13-nat-univ-f8ecdd z14 z14-nat-univ-f8ecdd z16 z16-colleges-f8ecdd z15 z15-tiong-bahru-f8ecdd

Adamant36 commented 5 years ago

How is the last one any different then any of the colors proposed by @Tomasz-W in the retail PR that you were against? Because it would make a good retail color. I still think it should be a yellow off shade like #f9efbc. If we made the last one the retail color (and @Tomasz-W's current retail pick the commercial color) I think that would work good.

Do me a favor and test here or a very similar place how I just said if you can please.

jeisenbe commented 5 years ago

Re: 4. old farmland color but less saturated: #f8ecdd - LCH(94,9,80) I previously wrote:

"Perhaps the saturation is too low now, however."

I forgot to check this color against bare_ground color; it's too close because of the low saturation. Bare_ground is 92,6,74. So the former farmland color, Lch(94,13,80), is different enough from bare_ground, but #f8ecdd - LCH(94,9,80) - is too close.

Sorry about that. It can be difficult to remember all of the different landcover colors that might conflict with a new option; bare ground is not very similar to yellow or the current color, but it is quite close to some other options.

Adamant36 commented 5 years ago

So check this out, retail (your current last color), commercial (Tomasz-W's retail color), social amenity #f9efbc (the yellow color above). z16 retail as last color z16 z17 retail as last color z17 z18 retail as last color z18 But alas, retail is still not very noticeable at higher zoom levels, but I still think its a good direction to go in (retail/commercial/social amenities as some kind of peach/yellow/skin color shade). It looks nice. The social amenity color looks good with parks to, but I don't think anything more toned down (like your last color) would. retail as last color

Adamant36 commented 5 years ago

IMHO, Z18 above looks way better compared to the current colors at z18. Current colors z18 current Z18 with colors above retail as last color z18

Adamant36 commented 5 years ago

@jeisenbe, as a side this, what do you think about the idea of blending colors grey down to z13 instead of z12? I think it would solve a lot of these problems with colors being to close to the ground color. Since they are only to close at a few zoom levels and we shouldn't have to discount them because of that if they perfectly fine otherwise. We shouldn't not use those colors above when they look good just because they don't work at z13. Its not like the current retail color does anyway.

I'm perfectly willing to put these landuse color issues on hold for now and open a new for it if need be. I don't think we will be able to decide on good, or any, colors otherwise.

polarbearing commented 5 years ago

Boundaries are discussed, thus this will address #3519

Adamant36 commented 5 years ago

@kocio-pl, what do you think about blending things to grey down to z13? I think it would solve some of the problems with picking colors. Especially here and in the retail issue. Since most of the colors work fine except at z13 and you can't normally make out specific landuse at that level whatever the color is. I don't think just relying on borders is a good solution either. I can think of examples where they don't help at all.

kocio-pl commented 5 years ago

I don't follow this discussion, but that's at least new and interesting idea to consider. However I guess until the release I will try rather to focus on easier problems.

Adamant36 commented 5 years ago

@kocio-pl, OK. I'll save it for after the next release.

jeisenbe commented 5 years ago

Do me a favor and test here or a very similar place how I just said if you can please.

Here's a test with 6. #f9efbc - Lch(94,26,100) for societal_amenities in the centre of Redding, California, as requested. https://www.openstreetmap.org/#map=16/40.5840/-122.3907 z15 Current z15-redding-master After - f9efbc z15-redding-f9efbc

z16 Current z16-shasta-rmc-master After - f9efbc z16-shasta-rmc-f9efbc

z17 Current z17-shasta-rmc-master After - f9efbc z17-shasta-rmc-f9efbc

jeisenbe commented 5 years ago

Remember that option 6. requires changing the beach rendering as well.

Here's option 3. #f5f3c6 - Lch(95,23,106) - for comparison z15 z15-redding-f5f3c6 z16 z16-shasta-f5f3c6 z17 z17-shasta-f5f3c6

(OT: The biggest issue with the rendering for Redding is that all those parking lots block much of the the landcover color, and because parking is so close to land-color it almost looks like most of the area is untagged.

I'd suggest building more housing on all that parking, to improve the map. ;-) )

Adamant36 commented 5 years ago

Yeah dude, especially California. We love our parking lots that are six times bigger then the store the parking is for.

I wish they would reuse the parking for housing here. The parking is always empty anyway. Thats actually one of my main gripes about the area. Im always ranting to people about how its a massive miss use of space. Or at least use some of it for public spaces. Good luck getting any of that off the ground with the local planning department. Unfortunately We're one of the last holdouts of the outdated American suburb model. The down towns and afordable housing can rot for all they care as long as they have their nice mansions in the rich areas. Gggrrr.

Im sure you know all about that though since you use to live around here. But it still feels good to go off about it sometimes. Its one the reasons I got into OSM in the first place. An interest in urban planning wtc.

Your in Indonesia now I take it?

Thanks for the tests. I'll probably wait until the next update and see if I can get the grey thing off the ground before dealing with landuse color anymore. I feel like we are at a dead on it. Not so much here, but especially with retail/commercial.

jeisenbe commented 5 years ago

Kahului, Hawaii: https://www.openstreetmap.org/#map=13/20.9042/-156.4423

z13 Current master: z13-kahului

  1. z13 Societal_amenities in #f5f3c6 z13-kahului-societal-f5f3c6

  2. z13 Societal_amenities in#f9efbc z13-kahului-societal-f9efbc

jeisenbe commented 5 years ago

Belfast, N. Ireland: https://www.openstreetmap.org/#map=13/54.5975/-5.9104 z13 Current z13-belfast z14 Current z14-belfast-master

Derry, N. Ireland: https://www.openstreetmap.org/#map=13/54.9936/-7.3074 z13 Current z13-derry z14 Current z14-derry

jeisenbe commented 5 years ago

I still think #f9efbc - Lch(94,26,100) would work well as a new societal-amenities color, if we don't want to consider going back to #fbecd7 - Lch(94,12,80).

Since this would be very similar to the current @beach - #fff1ba Lch(95,29,97), the color of beaches could be changed to match @sand - #f5e9c6 Lch(92,19,95). It's not clear why beaches require a separate color. The difference between sand beaches and coarse beaches (eg shingle, gravel, shells, pebbles) is currently shown with a different pattern.

Here are some comparisons of beaches in southern Italy, before and after:

Sira Resort, before sira-resort-master-16 40 1230 16 650616 After sira-resort-after

Before beach-camping-master-16 40 3589 16 8344 After beach-camping-after

Before beach-woods-master-14 40 4067 16 8726 After beach-forest-after

imagico commented 5 years ago

For better understanding - beaches are a geomorphological land form at coasts formed by waves. The tag natural=beach is used fairly consistently for this (plus for artificial beaches of course). natural=sand is orthogonal to this and while not used as consistently as natural=beach for what it is meant for it is quite consistently not used for beaches. This is one of the few bright spots in physical geography OSM tagging where a non-obvious differentiation is relatively consistently applied globally. And in coastal settings differentiating between wave formed beaches and wind formed coastal dunes is both well verifiable locally and meaningful. Unifying would be counterproductive and highly confusing.

jeisenbe commented 5 years ago

I had hoped that using a different pattern for natural=beach and natural=sand would be sufficient. This is also the way that scree and shingle are distinguished.

For those following along*: natural=scree and natural=shingle use the same background color as natural=bare_rock, but with different patterns. Scree is usually found on hill and mountain slopes, and consists of rough, broken stones: from pebble to small boulder size. Shingle is similar in size, but the stones and cobbles are rounded due to the action of water; usually this will be found along rivers, though there are also shingle "beaches" along lakes and seas. So this is rather analogous to the difference between sand dunes and sand beaches, though a beach can also have larger mineral particles such as pebbles, and this is already shown with a different pattern.

The current beach color is also used for shoals, which are areas in the sea that may be exposed at low tide and covered at high tide, and can have a varying surface from silt and sand to cobblestones (but not solid rock or coral: this would be a natural=reef)

Right now, natural=beach/shoal use a bright shade of yellow, #fff1ba Lch(95,29,97) which has a delta Δ: 10.4 with@sand and Δ: 23.7 with @bare_ground [screen, shingle]. There is normally no pattern, unless there is a surface tag. In this case natural=beach with surface=sand uses the same pattern as sand, and surface=gravel, pebbles, shingle, shells etc. are shown with the beach_coarse.png pattern.
*[I'm sure @imagico knows these details already]

So one simple option would be to remove the pattern for natural=beach with surface=sand.

This would then show a clear distinction between inland dunes tagged with natural=sand and natural=beach, even if the landcover is sand for both. The disadvantage would be that tagging surface=sand would no longer make a difference. However, most beaches in the world currently lack a surface tag and our rendering of surface=sand does not seem to have been a strong encouragement for adding the tag.

Another option would be to create a separate pattern for natural=sand. Right now the pattern is symbols/beach.png - rather misleading. There is an open issue requesting rendering of natural=dune; this would also be a chance to make a distinctive pattern for dunes, if we want to even more clearly show a difference, without creating yet another background color.

jeisenbe commented 5 years ago

Having said that, if it is necessary to use 2 separate colors for beach/shoal vs sand, we could use #fbecd7. This has these deltas: Δ: 7.1 from @bare_ground #eee5dc Δ: 7.4 @sand #f5e9c6 Δ: 9.5 from @farmyard #f5dcba which are the 3 closest colors, I believe.

Since the current @sand #f5e9c6 has a delta of 13.4 with @bare_ground, it would probably make more sense to switch @sand to #fbecd7 and use #f5e9c6 for beach.

This creates these earth-tone colors for non-vegetated areas: @mud: #e6dcd1 - Lch(88, 7, 107) - over @land-color @bare_ground: #eee5dc - Lch(91, 6, 74) @sand: #fbecd7 - Lch(94, 12, 82) @beach: #f5e9c6 - Lch(92, 19, 95) @farmyard: #f5dcba - Lch(89, 20, 80)

Compare to: *@societal-amenties: #fceebc - Lch(94, 26, 96) - *new color; slightly adjusted to be less similar to secondary-fill

@secondary-fill: #f7fabf - Lch(97, 30, 110) @primary-fill: #fcd6a4 - Lch(88, 30, 78) @commercial: #f2dad9 - Lch(89, 8.5, 25) @garages: #dfddce- Lch(88, 8, 104) @building-fill: #d9d0c9 - Lch(84, 5, 70) @construction: #c7c7b4 - Lch(80, 10, 109)

Link to color values with deltas: http://davidjohnstone.net/pages/lch-lab-colour-gradient-picker#e6dcd1,eee5dc,fbecd7,f5e9c6,f5dcba,fceebc,f7fabf,fcd6a4,f2dad9,d9d0c9,dfddce,c7c7b4

lch-vertical-newsand-newbeach-newsocietal

lch-sand-beach-societal-big

jeisenbe commented 5 years ago

Since the current @sand #f5e9c6 has a delta of 13.4 with @bare_ground, it would probably make more sense to switch @sand to #fbecd7 and use #f5e9c6 for beach.

Well, sometimes things make sense but don't look so good. It turns out that beach as #fbecd7 and use #f5e9c6 for sand looks better.

Here's some test images in Northern Ireland with a beach near sand and bare_ground (rocks on the jetties): https://www.openstreetmap.org/#map=15/55.1680/-6.7696

Before (sand #f5e9c6, beach #fff1ba) castlerock-beach-master-15 55 1661 -6 7659

z17-beach-sand-master

sand #fbecd7 and #f5e9c6 beach castlerock-after-sand fbecd7-beach f5e9c6

z17-beach-sand-after1

beach #fbecd7 and sand #f5e9c6 castlerock-after-beach fbecd7-sand f5e9c6-

z17-sand-beach-after2

beach and sand both #f5e9c6 - no pattern on beach with surface=sand castlerock-beach-nopattern

z17-no-pattern-beach

imagico commented 5 years ago

I think you are focusing too much on one-dimensional color distances here. Color space is three dimensional and so is color perception. DeltaE values will be able to give you an idea how well two colors are distinguishable in isolation. But in reality pairs of colors do not occur in isolation in most cases - there are usually other colors around and these relate in three dimensions.

Some time ago i said that this style has reached the end of the line in terms of area colors and i would meanwhile say it has gone beyond that (by in some cases more or less overloading colors for several unrelated purposes). And the lack of any universally agreed on principles for color choices does not make this any easier. Yes, in principle you can still try to squeeze in a color here and there but in most cases this will not improve the map.

It is good that you try to look at the big picture but without overall design principles as guidance this is probably fairly hopeless.

I had hoped that using a different pattern for natural=beach and natural=sand would be sufficient. This is also the way that scree and shingle are distinguished.

Scree and shingle are currently rendered identically.

Note rendering natural=sand with a pattern was a relatively recent and isolated change. Design choices for natural=beach and natural=scree/shingle were both done with sand being rendered in plain color.

Adamant36 commented 5 years ago

Lately I've been thinking all "human" landuses should be the same color. Its a superficial distinction that know one really cares about or gets the difference on anyway and it just over complicates things. Everyone just tags everything as large residential areas at this point. I barely ever see retail, commercial, societal, and residential areas individually micro-mapped. The boundaries and landuse areas can be seen with borders. I think that's enough.

I think a better route then this would be to choose a single color for all of them that would work well with the major/minor/type building coloring scheme that is currently being proposed. Most things are mixed use these days and it matters more what the specific building is. Not what "landuse" it is. How many shopping centers out there have commercial buildings along with the retail ones? or how many commercial districts have a restaurant or thrift shop hidden in a small building somewhere in the middle of it? I rather be able to tell those things.

jeisenbe commented 5 years ago

Scree and shingle are currently rendered identically.

You are correct, I was wrong in thinking they had a different pattern. They are distinguished from natural=bare_rock by pattern, but not from each other. I think they should get a subtly different rendering, since they are clearly different features, just like beaches vs sand.

Some time ago i said that this style has reached the end of the line in terms of area colors and i would meanwhile say it has gone beyond that (by in some cases more or less overloading colors for several unrelated purposes)

That's why I suggested using the same color, but a distinct pattern, for natural=and and natural=beach; this would reduce the number of earth-tone colors by one.

The other suggestions do not increase the number of landcover colors, but move currently used colors to different features: the beach color will instead be used for societal-amenities.

*(#fbecd7 was recently used for the societal-amenities color, and before that was used for farmland)

I think you are focusing too much on one-dimensional color distances here...

Is there a better way to measure this?

I'm planning to show test images as well

jeisenbe commented 5 years ago

Groes Las, Wales z16 Natural=beach with natural=sand (dunes) inland https://www.openstreetmap.org/#map=16/52.8470/-4.1137 Before (sand #f5e9c6, beach #fff1ba) groes-las-master-16 52 8470 -4 1137 After (beach #fbecd7, sand #f5e9c6) groes-las-after-beach fbecd7-sand f5e9c6

Morfa Dyffryn, Wales https://www.openstreetmap.org/#map=16/51.5645/-4.0547 Natural=beach with natural=sand Before morfa-dyffryn-master-15 52 7965 -4 1275 After morfa-dyffryn-after-beach fbecd7-sand f5e9c6-

Pwlldu Bay, Wales https://www.openstreetmap.org/#map=16/51.5645/-4.0547 Natural=beach with surface=sand (center), coarse surface (north), and untagged (east and west) Before pwlldu-master-16 51 5645 -4 0547 After pwlldu-after-beach fbecd7-sand f5e9c6-

Traeth Penrhos, Wales Here the sand has been tagged on the ocean side of the natural=beach, oddly. https://www.openstreetmap.org/#map=15/53.1458/-4.3936 Before traeth-penrhos-master-15 53 1458 -4 3936 After traeth-penrhos-after

Talacre, Wales The northwest sandbank in the sea is tagged natural=beach, the bank on the northeast is natural=sand. The main beach is natural=beach, with natural=sand dunes inland. https://www.openstreetmap.org/#map=13/53.3607/-3.3359 Before z13-talacre-master-13 53 3607 -3 3359 After z13-talacre-sands-banks-beaches-after

jeisenbe commented 5 years ago

These test images show societal-amenities (schools, universities, hospitals) with the suggested new color; the first tow also have beaches and sand dunes.

Burry Port, Wales Sand in the southwest corner, beach in the south and southeast, two schools. https://www.openstreetmap.org/#map=15/51.6817/-4.2493 Before (sand #f5e9c6, beach #fff1ba, societal-amenities #ffffe5) burry-port-master-15 51 6817 -4 2493 After (sand #f5e9c6, beach #fbecd7, societal-amenities #fceebc) sand-beach-school-burryport-after-15 51 6824 -4 2438

Harlech, Wales School, dunes and beach Before #ffffe5 harlech-master After #fceebc harlech-after

Llandaff, University https://www.openstreetmap.org/#map=15/51.4953/-3.2081 Before llandaff-z15-master-15 51 4953 -3 2081 After llandaff-societal-after

Cardiff https://www.openstreetmap.org/#map=13/51.4901/-3.1603.png Before cardiff-z13-master-13 51 4901 -3 1603 After cardiff-societal-after

Newport https://www.openstreetmap.org/#map= Before newport-z13-master-13 51 5883 -2 9479 After newport-societal-after

jeisenbe commented 5 years ago

I've been thinking all "human" landuses should be the same color

Including schools, hospitals, police stations... military areas?

I think that's a reasonable idea for low and mid zoom levels.

But at high zoom levels we should try to show the major types, so that mappers will know if they've tagged an area correctly. The current transition at z12 to z13 is fine.

kocio-pl commented 5 years ago

The contrast between strong yellow for schools and green pitches, which are usually there too, looks bad for me.

polarbearing commented 5 years ago

But what's a "social amenity" anyway?

Is is a category we introduced here in carto to make the discussion about a set of particular amenities easier. Thus it does not describe one tag and is not intended to.

Hospitals are mostly offices

Hospitals typically take in-patients, so it is mostly bedrooms.

Its not like colleges and police stations can't have icons.

Police does have an icon. Educational institutions could have one, if #3284 gets solved. We do not know yet how to deal with icons when the label has flexible font size.

imagico commented 5 years ago

I think you are focusing too much on one-dimensional color distances here...

Is there a better way to measure this?

No, color physiology is not something you can cast into simple quantitative measurements.

Back in the days we had in #2462 discussed various more specific methods of assessing color relationships which however were not ultimately adopted as rules for this style so color choices do not generally follow these rules:

https://github.com/imagico/osm-carto-alternative-colors/blob/bb68be69992724f56af1ba69fd1cf9aaf59284a0/CARTOGRAPHY.md

Adamant36 commented 5 years ago

Is is a category we introduced here in carto to make the discussion about a set of particular amenities easier. Thus it does not describe one tag and is not intended to.

Yeah that's exactly my point. That's why it can be any color, another color, no color, multiple colors, or whatever. Because its not one particular thing and can be whatever we want it to be.

Hospitals typically take in-patients, so it is mostly bedrooms.

The specific buildings or sections at the hospitals that take in patents do. I don't know how it is in Europe, but in America its as much about out patient services, counseling, cancer screening, physical therapy, end of life planning etc as anything.

if #3284 gets solved

I'm aware of #3284. That's where my whole "we should use our time on more important issues then debating the benefits of %1 change in LCH on something that's already adequate" or whatever, comes in. Issue's like that aren't ever going to be closed otherwise. There will always ways to tweak the colors on things and people will always have issues with the current colors. Especially considering there's no design goals at the moment. In most of these cases @jeisenbe is just debating things with himself 99% of the time anyway. Not to say he shouldn't test things or its not valuable, just that a "work on bugs (or whatever) until design goals get decided on" approach might be better.

Anyway, that's just my opinion.

jeisenbe commented 5 years ago

Back in the days we had in #2462 discussed various more specific methods of assessing color relationships which however were not ultimately adopted as rules for this style so color choices do not generally follow these rules:

https://github.com/imagico/osm-carto-alternative-colors/blob/bb68be69992724f56af1ba69fd1cf9aaf59284a0/CARTOGRAPHY.md

I’ve read thru #2462 and your alt-colors cartography guidelines.

But I may have missed the section about “more specific methods of assessing color relationships”?

The relevant section of guidelines for this issue (societal-amenities color):

Colors

It looks like these parts of the guidelines were agreed upon by all the maintainers who commented in #2462

I’ve tried to follow these while designing the new color. The current color is too “strong” because it is very light, thus the contrast is too high with buildings, roads and pitches and the color does not fit in with developed landuses such as residential and retail.

So I’ve been trying to find a color that has a more similar lightness and chroma to the other landuse colors for areas of similar size, eg retail, commercial, farmyards, allotments, industrial.

I’ve also tried to keep the hue fairly similar to the current and older colors, since it is better to avoid large changes without consulting the broader OSM community (also mentioned in guidelines).

Are there other principles that should be considered for this issue?

jeisenbe commented 5 years ago

The contrast between strong yellow for schools and green pitches, which are usually there too, looks bad for me.

That's unfortunate. I thought that #fceebc looked fine with pitches. Perhaps the pitch color needs to be changed to be less blue, if even yellow is too much contrast with the current medium blue-green pitch fill? I've been considering trying the current @golf color for pitches.

The other option that I previously tested was 3) #f5f3c6 - this is mustard-yellow with a touch of green; the same hue as the current societal-amenities color. So it may look nicer next to blue-green tones.

3) #f5f3c6 - Lch(95,23,106)

z13 z13-university-f5f3c6

z14 z14-nat-univ-f5f3c6

z16 z16-colleges-f5f3c6

z18 z18-methodist-f5f3c6

More examples with this color #f5f3c6:

https://github.com/gravitystorm/openstreetmap-carto/issues/3607#issuecomment-450452286

https://github.com/gravitystorm/openstreetmap-carto/issues/3607#issuecomment-450539337

kocio-pl commented 5 years ago

Yes, this one is strong, but plays nice with pitches.

jeisenbe commented 5 years ago

#f5f3c6 Lch(95,23,106) isn't ideal, because like the old societal-amenities color it is slightly greenish, which makes it somewhat similar to farmland and heath, and we've been trying to keep shades of green and yellow-green for vegetation-related areas.

It's a little too close to @secondary-fill and @sand as well, though I think this is not very likely to cause confusion. Overall it is an improvement on the current color, but not a perfect solution.

A shade with a more yellow-orange hue, like #fceebc, would be preferable, both to distinguish it from vegetation and from secondary-fill (though this then requires changing @beach, and perhaps we need to change @pitch to be less blue).

But here are some more examples with f5f3c6, with a weaker outline color and adjusted text color:

z13-bangor-f5f3c6

harlech-f5f3c6

school-borders-f5f3c6

llandaff-f5f3c6

z13-rhyl-f5f3c6

z13-cardiff-f5f3c6

z13-newport-f5f3c6

imagico commented 5 years ago

The rules i linked to are methods of assessing the suitability of colors, not for how to pick the colors in the first place.

The most significant rule is usually the rule of similarities: The difference in rendering between different types of features should foremost be based on their difference in meaning and purpose for the target map users.

What you can do is evaluating various ideas and past choices regarding how they fare w.r.t. these rules - and this can give you a better idea if and why some of these work better than others.

But always keep in mind that for how colors work in maps there are many more factors that play a role - in particular since the map user does and needs to recognize structures in the map that go beyond individual features

Adamant36 commented 5 years ago

@jeisenbe, what about something like #e5e5d7? It looks kind of sophisticated and good next to parks/parks. Although grass mapped on top of it looks a tad saturated, but it can be tweaked. download

jeisenbe commented 5 years ago

#e5e5d7 is quite close to landuse=garages #dfddce (deltaE is 2.9), and also close to bare_ground #eee5dc (delta 4.2), mud (delta 4.6) and transportation-area #e9e7e2 (delta 4.9)

http://davidjohnstone.net/pages/lch-lab-colour-gradient-picker#e5e5d7,e9e7e2,e6dcd1,e5e5d7,f2efe9,eee5dc,e5e5d7,dfddce

On 3/5/19, Adamant36 notifications@github.com wrote:

@jeisenbe, what about something like #e5e5d7? It looks kind of sophisticated and good next to parks/parks. Although grass mapped on top of it looks a tad saturated, but it can be tweaked. download

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/gravitystorm/openstreetmap-carto/issues/3607#issuecomment-469623135

Adamant36 commented 5 years ago

#e5e5d7 is quite close to......

Different enough though maybe. Its not like some things don't look similar. Context matters also. I don't people are going to confuse a school ground for mud. Its not like you can't tweak it either. I at least know yellow and orange doesn't work. I s;pent a few hours trying to find something on the yellow/orange that didn't look horrible or stand out to much. I couldn't find anything. So I think another color is needed.

Btw, it looks much lighter as a dot then it actually is as areas. It doesn't look anything like bare ground in actual usage. Even if the "deltas" are close. I don't really care if they share some abstract value in common. Its more important they don't look similar.

jeisenbe commented 5 years ago

New idea: try @societal_amenities in #f5e9c6and change natural=sand to @bare_ground - #eee5dc to match scree, shingle and bare_rock.

jeisenbe commented 5 years ago

I tested the new option (using the current @sand color), but #f5e9c6 is not as perfect as I hoped. It's a bit similar to beaches, shingle and similar areas, so it's not a clear improvement over the previously tested colors (and it still requires changing the @sand color):

z15-bremen-f5e9c6-societal (Note beach near southeast corner for comparison)

z14-bremen-f5e9c6-societal

My preference would still be for #fceebc (which requires changing the beach color), but @kocio-pl did not like the way it looks next to pitches:

z15-bremen-fceebc-societal

z14-bremen-fceebc-societal

I would be willing to try changing the color of pitches to be less blue (like @golf?), which might help with this impression, but since I don't notice the problem myself, this makes it hard to design a solution.

#f5f3c6 is the third option. The hue is closer to green than I would like (it's similar to farmland, though not as light, and somewhat similar to allotments, heath, and camp_site), but the lower lightness is an improvement from the current @societal-amenities color.

z15-bremen-f5f3c6-societal

z14-bremen-f5f3c6-societal