Thanks for posting this. We made some attempt in Gadfly to account for deuteranopia in the colors we chose, but not protanopia. There's clearly more work that needs to be done to improve this. Pointing this out is a big help: we have functions to try to simulate color blindness, and I regularly show plots to my advisor who's deuteranopic, but otherwise it's hard to evaluate how well we're doing. If I experiment with this more, I hope you can comment on the results.
A major issue with using cubehelix for numerical data is that, since it's based on RGB, it's perceptually non-linear. Some intervals appear to transition between two colors very rapidly, while other intervals of the same size appear to stay the nearly the same color. This is a problematic for data visualization as it can emphasize or deemphasize certain ranges. For numerical data, I think it's possible to use something in the spirit of cubehelix but in colorspace that accounts for human visual non-uniformity. On Sunday, February 8, 2015 at 6:13:34 AM UTC-8, Job van der Zwan wrote: > > This is inspired by this "speed vs LOC" graph from an earlier discussion > (dug up by Steve): > https://groups.google.com/d/msg/julia-users/BYRAeQJuvTw/O7VK7-vp1EEJ > > Because of my protanomaly > <http://www.colourblindawareness.org/colour-blindness/types-of-colour-blindness/>, > > I cannot distinguish the Lua, Julia or Octave dots in that picture (or C, > Python and JavaScript). > > The thing about plotting packages is that you have to meet the needs of > two audiences for it: those who produce graphs with it, and those who will > read the graphs produced by it, which is a bit of different need than > creating a script for yourself. This is part of why it is such an > overlooked issue: most people who will make a plot are not colour blind > themselves. > > Which made me think: instead of a colour blind person asking for a colour > blind-friendly version of a graph every time (or suffering in silence, > because honestly, I feel like I'm whining when I do this), why not give the > plotting packages have more colour blind-friendly defaults? That way most > of these issues would be resolved without requiring conscious effort by > those using the plotting packages. There's ways of doing so without making > the "normal vision" people suffer too. > > For example, us a form of CubeHelix or similar smartly designed palette as > the default palette: > http://www.ifweassume.com/2013/05/cubehelix-or-how-i-learned-to-love.html > https://www.mrao.cam.ac.uk/~dag/CUBEHELIX/ > > Another option would be to use different shapes for different data points, > instead of dots for everything. > > Both of these options have the advantage that they would reduce issues > with printing graphs in black and white too! > > Thoughts? >