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

Use violet-yellow color range for roads #3540

Open
kocio-pl opened this issue Nov 30, 2018 · 29 comments
Open

Use violet-yellow color range for roads #3540

kocio-pl opened this issue Nov 30, 2018 · 29 comments

Comments

@kocio-pl
Copy link
Collaborator

This ticket is about implementing roads color palette from alternative-colors style @imagico fork, described in this blog post: http://blog.imagico.de/more-new-colors/ .

roadcolor_z15

This is just an improvement of the current roads color scheme. Big road style redesign in 2015 (#1736) was largely a successful change, except some corner cases. like paths or tertiary roads. @matkoniecz used a clever hack to make red-yellow palette distinguishable enough, but it meant that tertiary roads need to be white - just bolder than all the lower classes. Yet this was still just a hack, design wise tertiary roads were left behind.

Unfortunately attempt to add lighter yellow was a failure (#2228 (comment)), because the palette was just too short. Extending it with a dark violet does the trick. It allows to make tertiary to not be oversized, which looks bad on two-carriage ways:

screenshot_2018-11-30 openstreetmap

Current works on admin borders color change lead to some grey+violet shade, which does not create problems - even 50% gray+violet is different enough (#3489):

sbbo0u5x
6 nsthx_

Now I feel 75% grey proposition is even better, which means further color distance from the borders.

A look at the roads comparison shows also that this change makes secondary roads thinner, which might help with similar two carriage ways problem with secondary:

screenshot_2018-11-30 openstreetmap 1

@kocio-pl kocio-pl added the roads label Nov 30, 2018
@kocio-pl kocio-pl added this to the Bugs and improvements milestone Nov 30, 2018
@kocio-pl kocio-pl changed the title Use violet-yellow range for roads Use violet-yellow color range for roads Nov 30, 2018
@jeisenbe
Copy link
Collaborator

jeisenbe commented Nov 30, 2018 via email

@kocio-pl
Copy link
Collaborator Author

kocio-pl commented Nov 30, 2018

This chunk is only about the roads to keep the problem manageable. However footway and path rendering change can be discussed in a separate ticket.

@kocio-pl
Copy link
Collaborator Author

Another consideration for yellow tertiary roads is that on the bare ground white tertiary are hardly visible, while yellow secondary are OK:

https://www.openstreetmap.org/#map=13/2.8702/11.3902

screenshot_2018-11-30 openstreetmap 3

@Adamant36
Copy link
Contributor

Adamant36 commented Nov 30, 2018

I'd like to see minor unclassified roads rendered differently then residential. Often times they are wider and contain heavier type traffic. At least here in America with roads in industrial and retail zones. Plus, most roads that qualify as unclassified in America seem to just be tagged as residential. Id like to see that change. Maybe rendering them differently so people know they are different and that residential roads aren't a catch all would help.

@Tomasz-W
Copy link

As there are hundreds of OSM styles (and another maps), Humanitarian style is the only one using violet roads which I know. For me, it's a totally weird idea. and I think we should sticle with classinc white-yellow-orange-red roads palette. I also find this a some regression beacause during last few years we was consequently dropping "screaming" colours, see: http://bl.ocks.org/matthijsmelissen/raw/7d2b0538a8b64b9d31e2/#14.00/51.4923/0.0425

@matkoniecz
Copy link
Contributor

matkoniecz commented Nov 30, 2018

Humanitarian style is the only one using violet roads which I know

For me prominent case of purple for major roads is map style used by the Compass company (makes high-quality hiking maps of Poland, not OSM focused).

I tried really hard to use purple during road redesign but it was conflicting primarily with borders.

@jragusa
Copy link
Contributor

jragusa commented Nov 30, 2018

I have a mixed feeling with this proposition. I also notice that several country (at least in Europe) use a blue or green shade for motorways.

@dieterdreist
Copy link

dieterdreist commented Nov 30, 2018 via email

@matkoniecz
Copy link
Contributor

matkoniecz commented Nov 30, 2018

@Adamant36 @dieterdreist

minor unclassified roads rendered differently then residential

Can you open a new issue for this discussion? See title of this issue.

Can you specify exact zlevels where either residential should be made weaker or unclassified stronger? From what I remember I tested it but I found no zlevels where either unclassified should be stronger or residential weaker from each other.

@kocio-pl
Copy link
Collaborator Author

@Tomasz-W

As there are hundreds of OSM styles (and another maps), Humanitarian style is the only one using violet roads which I know.

I don't even know other map styles (I don't even check how GMaps look like) and I didn't know what HOT style uses. I know however that most map styles are specialized (so they don't need too many colors - like Hike&Bike) or general (so they also don't need many colors - like GMaps). OSM Carto tries to be multi-specialized (general and specialized at the same time), so we need a lot of colors. And we have even to reuse them for different purposes.

For me, it's a totally weird idea. and I think we should sticle with classinc white-yellow-orange-red roads palette.

OSM defines many types of roads. Some of them are not popular enough yet and might be skipped for now (#1239), but main cadence is very popular, and every single type is important to be seen distinctively. Tertiary should be designed, not hacked, because we have too many white roads. Trying to cover more types in the same palette is also possible, but it will make them less recognizable. So with yellow-red you can basically try making the palette wider by adding something on the lower end (between yellow and white, but that didn't work) or something above red.

So it might be unusual, but perfectly valid and systematic approach.

I also find this a some regression beacause during last few years we was consequently dropping "screaming" colours, see: http://bl.ocks.org/matthijsmelissen/raw/7d2b0538a8b64b9d31e2/#14.00/51.4923/0.0425

  1. Dark violet is not screaming for me in any way. It's just highly saturated, but "weaker" than red roads for example.

  2. When thinking about strong/mild colors, it heavily depends on the type of geometry. We just added "screaming" orange for gastronomy, because it's used for nodes, which are small and would be lost otherwise (in fact, orange nodes sometimes are too light already - see Peaks and saddles are hardly visible #2848 (comment)). Lines can also be less visible (German fork is less shy about making them strong - see https://www.openstreetmap.de/karte.html ), so the only real danger comes from areas. They can easily dominate everything else. But even then, when some type of area is rare enough, it can be strong without harming the map (see Make landfill color different than construction and brownfield #2339).

@matthijsmelissen
Copy link
Collaborator

matthijsmelissen commented Nov 30, 2018

I'm actually quite happy with the tertiary roads as they are. I'm not sure if expanding the colour palette for roads will actually cause a more readable map.

@kocio-pl
Copy link
Collaborator Author

I understand that you are happy with current rendering, because I'm also happy with most of it, but do you think that yellow tertiary instead of white will be less readable (and not more readable)?

@matthijsmelissen
Copy link
Collaborator

matthijsmelissen commented Nov 30, 2018

The issue is not about making yellow tertiary, it is about adding an extra color to the palette that will make it less readable.

@kocio-pl
Copy link
Collaborator Author

Of course there is more than just this (but also about it), but I still don't get what exactly will make it less readable in your opinion (I guess you don't claim that it will be equally readable as currently)?

@jeisenbe
Copy link
Collaborator

jeisenbe commented Dec 15, 2018

I was initially unhappy about this idea, but I now believe it is a good idea. I've been working on improving the highway=construction rendering, and I've seen that the current secondary color is not easily visible without a casing.

By changing secondary highways to use light orange they will be more visible at mid and low zoom levels, including when rendered as a thin line as highway=construction & construction=secondary at z13.

This will also make it possible to render secondary highways with a light orange line at z9 and z10, which will make them more visible and also make it possible to lighten the color of railways at z8 and z9, as proposed in #3538 "Clean up z8-10".

Tertiary could then use yellow, so it could be rendered slightly narrower than primary highways at higher zoom levels. The yellow color would also distinguish tertiary_link roads from residential and minor highways, even if we make tertiary_link narrower, as planned in #3570

The main disadvantage is that it will add another road color. We already have 4 main road colors plus white for minor roads (and gray for pedestrian areas). I don't see a great deal of harm in going from 4 to 5 colors.

@polarbearing
Copy link
Contributor

Improving highway=construction rendering is fine, however it should not imply a change of the whole road palette.

@jeisenbe
Copy link
Collaborator

The main advantage would be allowing rendering of tertiary with a thinner line than secondary/primary highways. In many countries highway=tertiary are quite narrow, often only 4 to 6 meters wide. Near the equator this means that the current rendering is still too wide even at z19, but we can't make the rendering much narrower without confusing highway=tertiary with highway=residential/unclassified as long as tertiary has the same white fill.

Tertiary width at z19: 27 pixels = 8.1 meters

(one pixel is 0.3m wide at the equator at z19, so 27 pixels wide is 8.1)

If we switch the color spectrum for roads and use light yellow for tertiary, each class of road could have a slightly different width at mid-high and high zoom levels, and tertiary roads could be thin enough that they would not be significantly wider than their actual width at z19.

@kocio-pl
Copy link
Collaborator Author

I agree and I still support this proposition.

@imagico What is your take? I understand that this is your idea, but the context of a production system might be different from development model and I'm interested what details do you see here.

@imagico
Copy link
Collaborator

imagico commented Sep 10, 2019

The way i developed this in the form shown above was in combination with various other color changes in this style. It would certainly depend on non-purple boundary rendering to work.

There is certainly also some disadvantage in widening the color spectrum used for roads in terms of perceiving the road colors as a compact group of colors in the style. In the ac-style this is IMO more than amply compensated by other color scheme restructuring and clarification changes (like the elimination of blue from all non-water uses and the reduction in the number of POI symbol colors).

More examples on how this looks in that context can be found here:

http://www.imagico.de/map/ac_samples_en.php

There are other options for rendering roads with the given classification system and including yellow tertiaries - the German style demonstrates one of them.

@kocio-pl
Copy link
Collaborator Author

I still don't feel any change is needed in the current style to implement this, however there are possible changes that would help (like different color for borders).

Since this proposition in its current form received mixed reactions, I propose to close this (and open more general ticket for rethinking road color scheme, if someone thinks there is a need).

@imagico
Copy link
Collaborator

imagico commented Sep 10, 2019

I don't see objections from maintainers here so far that would warrant rejecting the idea. @matthijsmelissen voiced concerns about an additional road color in isolation affecting readability but as i mentioned you can't really do color design just by looking at individual color changes separately.

Closing this would mean rejecting the idea of a purple to yellow + white road color scheme. As @matkoniecz mentioned the main reason why purple motorways were not seriously considered originally was the purple boundaries. Unless we want to reject the possibility of non-purple boundaries i don't see a reason to definitely reject this idea for roads.

As indicated the most sensible order of changes is probably to do other color changes before this and then decide if this is a good idea. But it is important to keep in mind how these thing interrelate.

@kocio-pl
Copy link
Collaborator Author

I don't think closing specific ticket to discuss more generic problem means rejecting anything. We close many tickets with good ideas because it does not seem to be realistic at the moment and we do reopen them when the circumstanes change. But that's OK for me to left it open for future decisions.

Unfortunately we have no tools in GitHub for showing dependencies between tickets. Moreover there are many different tickets on improving road system and borders, so there is a bit of ticket mess.

@dieterdreist
Copy link

dieterdreist commented Sep 11, 2019 via email

@imagico
Copy link
Collaborator

imagico commented Sep 11, 2019

in the Freiburg area IMHO readability suffers for secondary roads with these changes

That depends on how you define readability i think. If you mean the ability to identify and distinguish secondary roads from other road types i think the opposite is the case.

Keep in mind that apart from the road color change this example shows a lot of other differences to OSM-Carto. And i specifically wanted to reduce the weight of roads rendering in general because i think it is over-emphasized in OSM-Carto. My impression is that this map style is less used for road centric applications and mappers have a less strong focus on roads than the weight of roads in rendering might indicate and the emphasis on roads is probably more owed to the fact that developers throughout the history of this style have often taken cues from other maps with a different user base and thematic focus.

@dieterdreist
Copy link

dieterdreist commented Sep 11, 2019 via email

@imagico
Copy link
Collaborator

imagico commented Sep 11, 2019

But that is not an inherent property of the road color change but of the interaction with the other changes implemented - which as explained has been intentional.

If here we'd decide we want to keep more emphasis on roads that is still perfectly possible with the shifted color scheme for roads.

@dieterdreist
Copy link

dieterdreist commented Sep 11, 2019 via email

@imagico
Copy link
Collaborator

imagico commented Sep 11, 2019

I am not sure what you are aiming at here. If you'd want to emphasize secondary roads in the ac-style at z10 you surely could. But this has no bearing on this issue and this style because adopting the same color scheme for roads here would lead to different results. If we'd adopt other changes here - like suggested in #3670 - that might change.

The main problem about designing road colors and drawing style is that it has to work in very different settings. And whatever styling change you might think improves the map in one setting often makes it worse in others.

@dieterdreist
Copy link

dieterdreist commented Sep 11, 2019 via email

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

No branches or pull requests

10 participants