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

New color palette makes runs very difficult to distinguish #449

Closed
kho opened this issue Aug 30, 2017 · 9 comments
Closed

New color palette makes runs very difficult to distinguish #449

kho opened this issue Aug 30, 2017 · 9 comments

Comments

@kho
Copy link
Contributor

kho commented Aug 30, 2017

Since Tensorboard 61, there has been a new color palate, where the first run is still orange, but the second run is dark red, and the third run is pink. These colors are really close to each other and as a result really hard to tell apart. See for example:
image

@chihuahua
Copy link
Member

Here is the discussion behind the previous color scale.
#288

One thing to note is that the colors should be accessible to color-blind people.

@Dapid
Copy link

Dapid commented Aug 31, 2017

The problem now is that it is equally bad for colour blind and normal vision, specially when the different runs are close.

Just switching the order will help a lot, so the first run is orange, the second teal, and so on.

@yingusxiaous
Copy link
Contributor

I agree about the order: in the previous discussion, Paul Toh suggested the order: orange, blue, red, cyan, magenta, teal, grey. Can we default to his suggested order instead of orange, red, magenta?

@wchargin
Copy link
Contributor

I'm not opposed in principle to changing the order of the palette. Any order that lists orange first and grey last is fine with me.

However, this is not a robust solution. You want runs that appear nearby in the plot to have different colors; differentiating colors among runs with lexicographically similar names will not accomplish this. For instance, if you have the runs

lr=1e-3,conv=1,fc=1
lr=1e-3,conv=1,fc=2
lr=1e-3,conv=2,fc=1
lr=1e-3,conv=2,fc=2

and you use the [orange, blue, red, cyan] order, then conv=1,fc=1 and conv=2,fc=1 will have similar colors; if those runs have similar curves (which seems plausible), then you'd have the same problem that you see here.

In general, there is no universal ordering that will work well on all datasets.

Note also that we are actually using Paul's suggested order: he says,

I give the colours in order of hue, but if you prefer a 'random' order
that still looks ordered: orange, blue, red, cyan, magenta, teal, grey.

We list the colors in order of hue, which is his primary suggestion. The order that you listed is his secondary suggestion, not his "suggested order."

@yingusxiaous
Copy link
Contributor

I agree that this is not a robust solution -- and to be clear, there is no perfectly robust solution given that we only have 7 colors (4 experiments, with train and eval exceeds that!).

However, I do think that current color choices are very suboptimal for the most common use cases; I conjecture that 1-2 experiments (with both eval and train) is probably much more common than 3+ experiments.

@wchargin
Copy link
Contributor

Your conjecture seems plausible to me; like I said, changing the order is fine with me.

@nmjohn
Copy link
Member

nmjohn commented Aug 31, 2017

Just +1ing, I've found the low relative contrast between the colors difficult for someone with relatively full color perception. Given that there are only two or three lines, I think a better ordering of these colors is possible.

@yingusxiaous
Copy link
Contributor

Great, preparing PR then.

@wchargin
Copy link
Contributor

wchargin commented Sep 2, 2017

Closing per #453.

@wchargin wchargin closed this as completed Sep 2, 2017
jart pushed a commit to jart/tensorboard that referenced this issue Sep 6, 2017
jart pushed a commit that referenced this issue Sep 6, 2017
@wchargin wchargin changed the title New color palate makes runs very difficult to distinguish New color palette makes runs very difficult to distinguish Sep 11, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants